FTXUI/README.md

53 lines
2.2 KiB
Markdown
Raw Normal View History

2019-01-06 08:37:26 +08:00
# FTXUI
2019-01-27 23:56:37 +08:00
**Functional Terminal (X) User interface**
2019-01-06 08:37:26 +08:00
2019-01-28 00:11:43 +08:00
A simple C++ library for terminal based user interface.
2019-01-06 08:37:26 +08:00
2019-01-27 23:56:37 +08:00
## Demo:
![Demo image](./examples/component/homescreen.gif)
2019-01-06 08:37:26 +08:00
## Feature
2019-01-28 00:20:55 +08:00
* Functional style. Inspired by
[1](https://hackernoon.com/building-reactive-terminal-interfaces-in-c-d392ce34e649?gi=d9fb9ce35901)
and [React](https://reactjs.org/)
2019-01-06 08:37:26 +08:00
* Simple and elegant syntax (in my opinion).
* No dependencies.
2019-01-19 05:45:25 +08:00
2019-01-06 08:37:26 +08:00
## Example:
~~~cpp
vbox(
hbox(
2019-01-20 05:06:05 +08:00
text(L"left") | border,
text(L"middle") | border | flex,
text(L"right") | border
2019-01-06 08:37:26 +08:00
),
2019-01-20 05:06:05 +08:00
gauge(0.5) | border
2019-01-06 08:37:26 +08:00
)
~~~
~~~bash
┌────┐┌───────────────────────────────────────────────────────────────┐┌─────┐
│left││middle ││right│
└────┘└───────────────────────────────────────────────────────────────┘└─────┘
┌────────────────────────────────────────────────────────────────────────────┐
│██████████████████████████████████████ │
└────────────────────────────────────────────────────────────────────────────┘
~~~
## Build
* With [CMake](https://cmake.org) : See [Instructions](./tutorial/build-with-cmake.md)
* With [nxxm](https://nxxm.github.io) :See [Instructions](./tutorial/build-with-nxxm.md)
2019-01-06 08:37:26 +08:00
## Tutorial
See [Tutorial](./tutorial/tutorial.md)
2019-01-06 08:37:26 +08:00
2019-01-28 00:11:43 +08:00
## Project using FTXUI
None! This is still a newborn project. Please add a link to your project here.
2019-01-28 00:20:55 +08:00
## Hosted on:
* [github](https://github.com/ArthurSonzogni/ftxui)
* [gitlab](https://gitlab.com/ArthurSonzogni/ftxui)