💻 C++ Functional Terminal User Interface. ❤️
Go to file
Arthur Sonzogni 4188ee2c04
Merge workflows. (#234)
- Merge all the workflows into one file.
- Produce Windows and MacOS artifact.
2021-10-17 20:10:07 +02:00
.github Merge workflows. (#234) 2021-10-17 20:10:07 +02:00
.nxxm Add nxxm suport. 2020-12-21 15:36:04 +01:00
cmake Merge workflows. (#234) 2021-10-17 20:10:07 +02:00
doc Update docs to use std::string. (#184) 2021-08-09 22:51:48 +02:00
examples Table (#229) 2021-10-15 23:04:11 +02:00
include/ftxui Table (#229) 2021-10-15 23:04:11 +02:00
src/ftxui Table (#229) 2021-10-15 23:04:11 +02:00
tools Improve documentation workflow (#163) 2021-07-23 08:40:47 +02:00
.clang-format Variou details: 2020-08-28 23:54:25 +02:00
CHANGELOG.md Merge workflows. (#234) 2021-10-17 20:10:07 +02:00
CMakeLists.txt Merge workflows. (#234) 2021-10-17 20:10:07 +02:00
ftxui-config.cmake.in add dependency to Threads into generated cmake config (#52) 2020-10-16 22:07:30 +02:00
iwyu.imp Run IWYU. (#208) 2021-09-16 20:45:26 +02:00
LICENSE Add LICENSE. Add take_any_args. 2019-01-06 16:14:19 +01:00
README.md Merge workflows. (#234) 2021-10-17 20:10:07 +02:00

Demo image

Documentation · Report Bug · Examples . Request Feature · Send a Pull Request

FTXUI

Functional Terminal (X) User interface

A simple C++ library for terminal based user interface.

Feature

  • Functional style. Inspired by [1] and React
  • Simple and elegant syntax (in my opinion).
  • Support for UTF8 and fullwidth chars (→ 测试).
  • No dependencies.
  • Cross platform. Linux/mac (main target), Windows (experimental thanks to contributors), WebAssembly.
  • Keyboard & mouse navigation.

Operating systems

  • Webassembly
  • Linux
  • MacOS
  • Windows

Example

  vbox({
    hbox({
      text("left") | border,
      text("middle") | border | flex,
      text("right") | border,
    }),
    gauge(0.5) | border,
  });
┌────┐┌───────────────────────────────────────────────────────────────┐┌─────┐
│left││middle                                                         ││right│
└────┘└───────────────────────────────────────────────────────────────┘└─────┘
┌────────────────────────────────────────────────────────────────────────────┐
│██████████████████████████████████████                                      │
└────────────────────────────────────────────────────────────────────────────┘

Documentation

Project using FTXUI

Feel free to add your projects here:

Hosted on

External package

It is highly recommanded to use cmake FetchContent to depends on FTXUI. This way you can specify which commit you would like to depends on.

If you don't, the following packages have been created: