From 0c965473a28a389d2020c9c57951ef6c4fb30817 Mon Sep 17 00:00:00 2001 From: Temirkhan Myrzamadi Date: Sat, 11 Jul 2020 20:52:29 +0600 Subject: [PATCH] Rework the 'Features' section (README.md) --- README.md | 31 +++++++++---------------------- 1 file changed, 9 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index 01d6edbf..f506caf7 100644 --- a/README.md +++ b/README.md @@ -35,33 +35,20 @@ ## Features -

Functional reactive design

-

-teloxide has functional reactive design, allowing you to declaratively manipulate streams of updates from Telegram using filters, maps, folds, zips, and a lot of other adaptors. -

+ - **Functioal reactive design.** teloxide has [functional reactive design], allowing you to declaratively manipulate streams of updates from Telegram using filters, maps, folds, zips, and a lot of [other adaptors]. -
+[functional reactive design]: https://en.wikipedia.org/wiki/Functional_reactive_programming +[other adaptors]: https://docs.rs/futures/latest/futures/stream/trait.StreamExt.html -

API types as ADTs

-

-All the API types and methods are hand-written, with heavy use of ADTs (algebraic data types) to enforce type safety and tight integration with IDEs. As few Options as possible. -

+ - **Persistence.** Dialogues management is independent of how/where dialogues are stored: you can just replace one line and make them [persistent]. Out-of-the-box storages include [Redis]. -
+[persistent]: https://en.wikipedia.org/wiki/Persistence_(computer_science) +[Redis]: https://redis.io/ -

Persistence

-

-Dialogues management is independent of how/where dialogues are stored: you can just replace one line and make them persistent. Out-of-the-box storages include Redis. -

+ - **Strongly typed bot commands.** You can describe bot commands as enumerations, and then they'll be automatically constructed from strings. Just like you describe JSON structures in [serde-json] and command-line arguments in [structopt]. -
- -

Strongly typed bot commands

-

-You can describe bot commands as enumerations, and then they'll be automatically constructed from strings. Just like you describe JSON structures in serde-json and command-line arguments in structopt. -

- -
+[structopt]: https://github.com/TeXitoi/structopt +[serde-json]: https://github.com/serde-rs/json ## Setting up your environment 1. [Download Rust](http://rustup.rs/).