Update README.md

This commit is contained in:
Arthur Sonzogni 2023-06-04 18:04:50 +02:00 committed by GitHub
parent 7d7be0e9da
commit c6f0dd60ee
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -24,11 +24,11 @@
</p> </p>
## FTXUI # FTXUI
<i>Functional Terminal (X) User interface</i> <i>Functional Terminal (X) User interface</i>
A simple C++ library for terminal based user interfaces! A simple cross-platform C++ library for terminal based user interfaces!
## Feature ## Feature
* Functional style. Inspired by * Functional style. Inspired by
@ -40,7 +40,7 @@ A simple C++ library for terminal based user interfaces!
* Support for animations. [Demo 1](https://arthursonzogni.github.io/FTXUI/examples/?file=component/menu_underline_animated_gallery), [Demo 2](https://arthursonzogni.github.io/FTXUI/examples/?file=component/button_style) * Support for animations. [Demo 1](https://arthursonzogni.github.io/FTXUI/examples/?file=component/menu_underline_animated_gallery), [Demo 2](https://arthursonzogni.github.io/FTXUI/examples/?file=component/button_style)
* Support for drawing. [Demo](https://arthursonzogni.github.io/FTXUI/examples/?file=component/canvas_animated) * Support for drawing. [Demo](https://arthursonzogni.github.io/FTXUI/examples/?file=component/canvas_animated)
* No dependencies * No dependencies
* Cross platform: Linux/MacOS (main target), WebAssembly, Windows (Thanks to contributors!). * **Cross platform**: Linux/MacOS (main target), WebAssembly, Windows (Thanks to contributors!).
* Learn by [examples](#documentation), and [tutorials](#documentation) * Learn by [examples](#documentation), and [tutorials](#documentation)
* Multiple packages: CMake [FetchContent](https://bewagner.net/programming/2020/05/02/cmake-fetchcontent/) (preferred), vcpkg, pkgbuild, conan. * Multiple packages: CMake [FetchContent](https://bewagner.net/programming/2020/05/02/cmake-fetchcontent/) (preferred), vcpkg, pkgbuild, conan.
* Good practises: documentation, tests, fuzzers, performance tests, automated CI, automated packaging, etc... * Good practises: documentation, tests, fuzzers, performance tests, automated CI, automated packaging, etc...
@ -52,34 +52,22 @@ A simple C++ library for terminal based user interfaces!
- [Examples (WebAssembly)](https://arthursonzogni.github.io/FTXUI/examples/) - [Examples (WebAssembly)](https://arthursonzogni.github.io/FTXUI/examples/)
- [Build using CMake](https://arthursonzogni.github.io/FTXUI/#build-cmake) - [Build using CMake](https://arthursonzogni.github.io/FTXUI/#build-cmake)
## Operating systems
This is expected to be cross platform. This supports / tests:
- WebAssembly
- Linux
- MacOS
- Windows
## Example ## Example
~~~cpp ~~~cpp
vbox({ vbox({
hbox({ hbox({
text("left") | border, text("one") | border,
text("middle") | border | flex, text("two") | border | flex,
text("right") | border, text("three") | border | flex,
}), }),
gauge(0.5) | border,
}); gauge(0.25) | color(color::red),
gauge(0.50) | color(color::white),
gauge(0.75) | color(color::blue),
});
~~~ ~~~
~~~bash ![image](https://github.com/ArthurSonzogni/FTXUI/assets/4759106/569bf043-4e85-4245-aad5-2324572135c4)
┌────┐┌───────────────────────────────────────────────────────────────┐┌─────┐
│left││middle ││right│
└────┘└───────────────────────────────────────────────────────────────┘└─────┘
┌────────────────────────────────────────────────────────────────────────────┐
│██████████████████████████████████████ │
└────────────────────────────────────────────────────────────────────────────┘
~~~
## Short gallery ## Short gallery
@ -303,8 +291,8 @@ Prebuilt components are declared in [<ftxui/component/component.hpp>](https://ar
</details> </details>
## Libraries for FTXUI
- *Want to share a useful component using FTXUI? Feel free adding yours here*
## Project using FTXUI ## Project using FTXUI
@ -333,7 +321,7 @@ Feel free to add your projects here:
- [StartUp](https://github.com/StubbornVegeta/StartUp) - [StartUp](https://github.com/StubbornVegeta/StartUp)
- [eCAL monitor](https://github.com/eclipse-ecal/ecal) - [eCAL monitor](https://github.com/eclipse-ecal/ecal)
## [cpp-best-practices/game_jam](https://github.com/cpp-best-practices/game_jam) ### [cpp-best-practices/game_jam](https://github.com/cpp-best-practices/game_jam)
Several games using the FTXUI have been made during the Game Jam: Several games using the FTXUI have been made during the Game Jam:
- [TermBreaker](https://github.com/ArthurSonzogni/termBreaker) [**[Play web version]**](https://arthursonzogni.com/TermBreaker/) - [TermBreaker](https://github.com/ArthurSonzogni/termBreaker) [**[Play web version]**](https://arthursonzogni.com/TermBreaker/)