Functional Terminal (X) User interface - A simple C++ library for terminal based user interfaces!
FTXUI
Functional Terminal (X) User interface
A simple C++ library for terminal based user interfaces!
Feature
- Functional style. Inspired by
[1]
and React
- Simple and elegant syntax (in my opinion)
- Keyboard & mouse navigation.
- Support for UTF8 and fullwidth chars (→ 测试)
- Support for animations. Demo 1, Demo 2
- Support for drawing. Demo
- No dependencies
- Cross platform: Linux/MacOS (main target), WebAssembly, Windows (Thanks to contributors!).
- Learn by examples, and tutorials
- Multiple packages: CMake FetchContent (preferred), vcpkg, pkgbuild, conan.
- Good practises: documentation, tests, fuzzers, performance tests, automated CI, automated packaging, etc...
Tests
Examples
Builds
toolchain |
public-0.15.0 |
config |
macos_12-gcc_12.1_homebrew-static_O3 / x86_64-apple-darwin21.6.0 |
timestamp |
2023-05-19 16:20:19 UTC (18 09:19:18 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
macos_12-gcc_12.1_homebrew-O3 / x86_64-apple-darwin21.6.0 |
timestamp |
2023-05-19 16:15:34 UTC (18 09:24:02 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
macos_12-gcc_12.1_homebrew / x86_64-apple-darwin21.6.0 |
timestamp |
2023-05-19 16:12:05 UTC (18 09:27:31 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
macos_12-clang_13.1-static_O3 / x86_64-apple-darwin21.6.0 |
timestamp |
2023-05-19 16:05:53 UTC (18 09:33:43 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
macos_12-clang_13.1-O3 / x86_64-apple-darwin21.6.0 |
timestamp |
2023-05-19 16:03:57 UTC (18 09:35:40 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
macos_12-clang_13.1 / x86_64-apple-darwin21.6.0 |
timestamp |
2023-05-19 15:55:22 UTC (18 09:44:15 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-msvc_17.2-static_O2 / x86_64-microsoft-win32-msvc14.3 |
timestamp |
2023-05-19 15:54:01 UTC (18 09:45:36 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-clang_14.0_llvm_msvc_17.2-static_O2 / x86_64-microsoft-win32-msvc14.3 |
timestamp |
2023-05-19 15:53:18 UTC (18 09:46:18 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-msvc_16.11-static_O2 / x86_64-microsoft-win32-msvc14.2 |
timestamp |
2023-05-19 15:53:09 UTC (18 09:46:28 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-clang_13.0_llvm_msvc_16.11_lld / x86_64-microsoft-win32-msvc14.2 |
timestamp |
2023-05-19 15:53:08 UTC (18 09:46:29 days ago) |
result |
warning (update) | warning (test) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-clang_14.0_llvm_msvc_17.2_lld / x86_64-microsoft-win32-msvc14.3 |
timestamp |
2023-05-19 15:53:00 UTC (18 09:46:37 days ago) |
result |
warning (update) | warning (test) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-msvc_17.2-O2 / x86_64-microsoft-win32-msvc14.3 |
timestamp |
2023-05-19 15:52:37 UTC (18 09:47:00 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-clang_13.0_llvm_msvc_16.11-static_O2 / x86_64-microsoft-win32-msvc14.2 |
timestamp |
2023-05-19 15:52:17 UTC (18 09:47:20 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-gcc_11.2_mingw_w64-static_O2 / x86_64-w64-mingw32 |
timestamp |
2023-05-19 15:51:55 UTC (18 09:47:42 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
macos_11-clang_13.0 / x86_64-apple-darwin20.5.0 |
timestamp |
2023-05-19 15:51:53 UTC (18 09:47:44 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10_devmode-msvc_16.11 / x86_64-microsoft-win32-msvc14.2 |
timestamp |
2023-05-19 15:51:50 UTC (18 09:47:47 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-msvc_17.2 / x86_64-microsoft-win32-msvc14.3 |
timestamp |
2023-05-19 15:51:40 UTC (18 09:47:57 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-msvc_16.11-O2 / x86_64-microsoft-win32-msvc14.2 |
timestamp |
2023-05-19 15:51:07 UTC (18 09:48:30 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-clang_14.0_libc++-static_O3 / x86_64-linux-gnu |
timestamp |
2023-05-19 15:50:30 UTC (18 09:49:06 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-clang_14.0_libc++-O3 / x86_64-linux-gnu |
timestamp |
2023-05-19 15:50:09 UTC (18 09:49:28 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-clang_14.0_llvm_msvc_17.2-O2 / x86_64-microsoft-win32-msvc14.3 |
timestamp |
2023-05-19 15:50:09 UTC (18 09:49:28 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-msvc_16.11 / x86_64-microsoft-win32-msvc14.2 |
timestamp |
2023-05-19 15:49:55 UTC (18 09:49:42 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-clang_14.0_llvm_msvc_17.2 / x86_64-microsoft-win32-msvc14.3 |
timestamp |
2023-05-19 15:49:52 UTC (18 09:49:45 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-clang_13.0_llvm_msvc_16.11-O2 / x86_64-microsoft-win32-msvc14.2 |
timestamp |
2023-05-19 15:49:45 UTC (18 09:49:52 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-gcc_12.1-static_O3 / x86_64-linux-gnu |
timestamp |
2023-05-19 15:48:52 UTC (18 09:50:45 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-clang_13.0_llvm_msvc_16.11 / x86_64-microsoft-win32-msvc14.2 |
timestamp |
2023-05-19 15:48:47 UTC (18 09:50:50 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-gcc_11.2_mingw_w64-O2 / x86_64-w64-mingw32 |
timestamp |
2023-05-19 15:48:41 UTC (18 09:50:56 days ago) |
result |
error (test) | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-clang_14.0_libc++ / x86_64-linux-gnu |
timestamp |
2023-05-19 15:48:40 UTC (18 09:50:56 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-gcc_11.2_mingw_w64 / x86_64-w64-mingw32 |
timestamp |
2023-05-19 15:48:33 UTC (18 09:51:04 days ago) |
result |
error (test) | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-gcc_12.1-ndebug_O3 / x86_64-linux-gnu |
timestamp |
2023-05-19 15:48:32 UTC (18 09:51:05 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-clang_14.0-static_O3 / x86_64-linux-gnu |
timestamp |
2023-05-19 15:48:14 UTC (18 09:51:22 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
freebsd_13-clang_13.0-static_O3 / x86_64-freebsd13.1 |
timestamp |
2023-05-19 15:47:30 UTC (18 09:52:07 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-gcc_12.1-O3 / x86_64-linux-gnu |
timestamp |
2023-05-19 15:46:42 UTC (18 09:52:55 days ago) |
result |
warning (update) | warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-clang_14.0-O3 / x86_64-linux-gnu |
timestamp |
2023-05-19 15:46:37 UTC (18 09:52:59 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-gcc_12.1 / x86_64-linux-gnu |
timestamp |
2023-05-19 15:46:22 UTC (18 09:53:15 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
freebsd_13-clang_13.0-O3 / x86_64-freebsd13.1 |
timestamp |
2023-05-19 15:46:21 UTC (18 09:53:16 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-clang_13.0_libc++ / x86_64-linux-gnu |
timestamp |
2023-05-19 15:46:19 UTC (18 09:53:18 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-clang_14.0 / x86_64-linux-gnu |
timestamp |
2023-05-19 15:46:17 UTC (18 09:53:19 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-gcc_11.3 / x86_64-linux-gnu |
timestamp |
2023-05-19 15:46:16 UTC (18 09:53:21 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-clang_13.0 / x86_64-linux-gnu |
timestamp |
2023-05-19 15:46:14 UTC (18 09:53:23 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-emcc_3.1.6 / wasm32-emscripten |
timestamp |
2023-05-19 15:46:02 UTC (18 09:53:35 days ago) |
result |
error (test) | log | rebuild |
toolchain |
public-0.15.0 |
config |
freebsd_13-clang_13.0 / x86_64-freebsd13.1 |
timestamp |
2023-05-19 15:45:43 UTC (18 09:53:54 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |
toolchain |
public-0.15.0 |
config |
freebsd_12-clang_10.0 / x86_64-freebsd12.3 |
timestamp |
2023-05-19 15:45:38 UTC (18 09:53:59 days ago) |
result |
warning (test) | warning (test-installed) | log | rebuild |