awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
Back to gizak/termui

Open-source alternatives to Termui

30 open-source projects similar to gizak/termui, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Termui alternative.

  • rivo/tviewrivo avatar

    rivo/tview

    13,928View on GitHub↗

    tview is a library for building interactive text-based user interfaces in Go. It functions as a toolkit for managing event loops, user input, and screen rendering, providing a framework of pre-built widgets and an integrated layout engine for creating command-line applications. The project distinguishes itself through a comprehensive layout system that uses grid and flexbox models to create responsive designs. It also supports UI layer stacking to manage multiple screens and modal overlays. The framework includes a diverse suite of interactive components for data display, such as tables and

    Gogolangterminal-baseduser-interface
    View on GitHub↗13,928
  • yaronn/blessed-contribyaronn avatar

    yaronn/blessed-contrib

    15,745View on GitHub↗

    blessed-contrib is a terminal user interface framework and a Node.js console widget library designed for building data-driven command line interfaces. It serves as an ASCII data visualization toolkit and a dashboard framework for organizing grid-based layouts and interactive elements within a console. The project provides a collection of reusable terminal components, including a command line image renderer and tools for text-based graphic rendering. It specifically enables the creation of terminal dashboards through a system for positioning multiple widgets across rows and columns and a mecha

    JavaScript
    View on GitHub↗15,745
  • arthursonzogni/ftxuiArthurSonzogni avatar

    ArthurSonzogni/FTXUI

    9,686View on GitHub↗

    FTXUI is a C++ terminal user interface library and cross-platform console framework used for building interactive command line applications. It functions as a declarative terminal layout engine and a component-based UI toolkit that enables the creation of responsive interfaces. The library is distinguished by its terminal graphics and animation capabilities, allowing for the rendering of custom shapes, data plots, and smooth visual transitions using easing functions. It provides a comprehensive set of interactive widgets and a layout system utilizing flexbox and grid containers that adapt to

    C++arthursonzogniasciiascii-art
    View on GitHub↗9,686

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Find more with AI search
  • charmbracelet/lipglosscharmbracelet avatar

    charmbracelet/lipgloss

    10,591View on GitHub↗

    This project is a framework for composing terminal interfaces through declarative styling and a grid-based layout engine. It provides a comprehensive toolkit for building responsive command-line applications by managing ANSI escape sequences, color profiles, and text rendering to ensure consistent visual output across different terminal environments. The library distinguishes itself through its ability to automatically detect terminal capabilities and background themes, allowing it to adjust color schemes and downsample profiles for optimal readability. It utilizes a layered composition model

    Gocligogolang
    View on GitHub↗10,591
  • fdehau/tui-rsfdehau avatar

    fdehau/tui-rs

    10,875View on GitHub↗

    tui-rs is a Rust framework for building rich terminal user interfaces and dashboards. It provides a terminal layout engine for dividing the screen into flexible rectangular regions and a widget library for rendering data in a terminal. The project includes a cross-platform terminal backend abstraction layer to ensure consistent rendering and compatibility across different operating system terminal drivers. The framework covers a wide range of UI components, including data visualization tools such as charts, progress gauges, and sparklines, as well as structural elements like data tables, ite

    Rust
    View on GitHub↗10,875
  • jroimartin/gocuijroimartin avatar

    jroimartin/gocui

    10,575View on GitHub↗

    gocui is a console user interface library for the Go programming language. It provides a toolkit for building interactive terminal applications using a layout engine that organizes overlapping rectangular views and coordinates. The library features a terminal input handler to capture and map keyboard shortcuts and mouse events to specific application actions. It includes an ANSI escape sequence parser to manage text attributes, colors, and cursor positioning. The framework covers interface view management and overlapping window layering, allowing for a structured arrangement of content. Rend

    Gocuigogocui
    View on GitHub↗10,575
  • anomalyco/opentuianomalyco avatar

    anomalyco/opentui

    12,131View on GitHub↗

    Opentui is a terminal user interface framework for building interactive command line applications. It provides a component-based system featuring a flexbox layout engine, a virtual node component tree, and a low-level 2D cell array renderer. The project is distinguished by a sophisticated keyboard binding engine that maps complex multi-stroke sequences and chords to named commands using prioritized, reactive layers. It also implements a plugin architecture that allows external modules to inject custom UI components into designated layout slots and extend input logic at runtime. Its capabilit

    TypeScript
    View on GitHub↗12,131
  • wtfutil/wtfwtfutil avatar

    wtfutil/wtf

    16,971View on GitHub↗

    This project is a modular, terminal-based dashboard framework designed to aggregate and display real-time information within a grid-aligned interface. It functions as a centralized monitoring tool that translates data from local system resources, infrastructure services, and external web APIs into a unified, text-based display. The dashboard is distinguished by its plugin-based architecture, which allows users to encapsulate distinct data sources and display logic into isolated, independently managed modules. Users define their workspace through declarative configuration files or an interacti

    Gocuidashboarddevops
    View on GitHub↗16,971
  • zellij-org/zellijzellij-org avatar

    zellij-org/zellij

    33,683View on GitHub↗

    Zellij is a terminal multiplexer and workspace manager designed to organize command-line sessions into persistent, reconfigurable layouts. It functions as a terminal plugin framework, allowing users to extend their environment with modular, event-driven components that interact with the host through a structured message-passing protocol. The project distinguishes itself through a layout-engine-based architecture that decouples visual pane arrangements from process execution, enabling automated and repeatable terminal workflows. It includes integrated support for web-based remote access, facil

    Rustmultiplexerterminalworkspace
    View on GitHub↗33,683
  • nsf/termbox-gonsf avatar

    nsf/termbox-go

    4,786View on GitHub↗

    termbox-go is a Go terminal user interface library and cross-platform terminal emulator abstraction. It provides a system for creating text-based graphical interfaces by managing a terminal cell buffer and handling raw input events. The library functions as a terminal cell buffer manager and input handler. It maintains an internal grid of characters and colors, using a back buffer to synchronize updates to the physical screen and translate keyboard and mouse events into structured data. Its capability surface covers text user interface rendering and terminal display management, including cur

    Go
    View on GitHub↗4,786
  • holman/sparkholman avatar

    holman/spark

    6,059View on GitHub↗

    Spark is a suite of command line utilities designed to render numeric data sets as compact visual graphs using Unicode characters. It functions as a terminal data visualizer and charting tool that converts sequences of numbers into visual trend lines within a shell environment. The tool generates sparkline graphs by mapping numeric value ranges to specific Unicode block characters. It utilizes linear value scaling to normalize input numbers to fit within available character heights and processes data sequentially from the standard input stream to produce real-time visual output. These capabi

    Shell
    View on GitHub↗6,059
  • jonathanslenders/python-prompt-toolkitjonathanslenders avatar

    jonathanslenders/python-prompt-toolkit

    10,498View on GitHub↗

    python-prompt-toolkit is a Python library and terminal user interface framework used for building interactive command line interfaces. It provides a toolkit for constructing complex terminal applications with advanced input handling and layout management. The project features a real-time syntax highlighting engine and a rendering system that ensures correct alignment and display of double-width Unicode characters. It includes specialized capabilities for command line autocompletion, providing ghost text suggestions and searchable input history. The framework covers a broad range of interface

    Python
    View on GitHub↗10,498
  • gdamore/tcellgdamore avatar

    gdamore/tcell

    5,076View on GitHub↗

    tcell is a Go terminal user interface library and framework for building cell-based applications. It functions as a terminal emulator backend and input processor, utilizing a change-based diffing engine to manage screen state and efficiently render updates. The project is distinguished by its pluggable backend abstraction, which allows terminal interfaces to be rendered across physical terminals or compiled into WebAssembly for web browser display. It provides a virtual screen simulation to enable programmatic event injection and output inspection for automated application testing. Its capab

    Go
    View on GitHub↗5,076
  • mkaz/termgraphmkaz avatar

    mkaz/termgraph

    3,259View on GitHub↗

    Termgraph is a terminal data visualization library and command line analytics tool used to render bar charts, histograms, and heatmaps directly in the shell. It utilizes ANSI escape sequences and Unicode characters to generate colorful visual data representations within a text-based environment. The tool provides specialized capabilities for transforming raw datasets into horizontal or vertical bar graphs, column charts, and stacked charts. It also functions as a heatmap generator, mapping time-series data to a calendar layout to visualize temporal patterns over a year. The library supports

    Python
    View on GitHub↗3,259
  • apppear/chartviewAppPear avatar

    AppPear/ChartView

    5,633View on GitHub↗

    ChartView is a SwiftUI-native charting library that provides bar, line, pie, and ring chart components within a unified grid-based layout system. The library renders charts by composing SwiftUI views declaratively from data models, letting the framework handle layout and updates without intermediate drawing layers. The library supports multiple chart types that share a common grid layout, enabling composable data visualizations with synchronized axes and backgrounds. Bar charts display data as vertical bars, line charts plot connected data points with gradient fills and optional markers, pie

    Swift
    View on GitHub↗5,633
  • migueldeicaza/gui.csmigueldeicaza avatar

    migueldeicaza/gui.cs

    11,070View on GitHub↗

    gui.cs is a .NET terminal user interface toolkit and framework used to build interactive, cross-platform text-based applications. It provides a structured system for composing terminal views using a view hierarchy and a dedicated layout engine. The library distinguishes itself through a component-based widget system and a constraint-based layout engine that allows interfaces to remain responsive across different terminal window dimensions. It employs a virtual-screen buffer to minimize flickering during redraws and uses state-driven theme configurations to maintain persistent visual styles.

    C#
    View on GitHub↗11,070
  • gyscos/cursivegyscos avatar

    gyscos/Cursive

    4,810View on GitHub↗

    Cursive is a cross-platform terminal user interface toolkit and framework for building interactive applications in Rust. It provides a modular system for creating text-based graphical interfaces, utilizing a dedicated engine to manage the main display loop and view hierarchies. The toolkit features a backend-agnostic abstraction layer to ensure consistent rendering and input handling across different operating systems. It distinguishes itself through a palette-based theme engine that supports runtime theme loading and true color rendering, as well as the ability to generate user interface hie

    Rust
    View on GitHub↗4,810
  • scottplot/scottplotScottPlot avatar

    ScottPlot/ScottPlot

    6,417View on GitHub↗

    ScottPlot is a cross-platform, high-performance charting library for .NET that renders interactive plots across desktop and web GUI frameworks including Windows Forms, WPF, MAUI, Avalonia, Blazor, and WinUI. It provides an optimized rendering engine capable of displaying millions of data points with interactive pan, zoom, and live data streaming, while also supporting image export to formats like PNG and SVG for file output, cloud applications, and notebooks. The library distinguishes itself through a comprehensive set of chart types including scatter, line, bar, pie, heatmap, financial, rada

    C#chartchartingcharts
    View on GitHub↗6,417
  • naver/billboard.jsnaver avatar

    naver/billboard.js

    5,980View on GitHub↗

    billboard.js is a JavaScript charting library built on D3.js that renders interactive data visualizations from a single declarative configuration object. It supports a wide range of chart types including bar, line, pie, scatter, area, spline, step, candlestick, funnel, gauge, heatmap, radar, polar, treemap, bubble, donut, and sparkline charts, and can overlay multiple chart types within a single visualization. The library offers an opt-in Canvas rendering mode for improved performance with large datasets and high-density axis displays, alongside its standard SVG-based rendering. The library d

    TypeScript
    View on GitHub↗5,980
  • timqian/chart.xkcdtimqian avatar

    timqian/chart.xkcd

    7,838View on GitHub↗

    chart.xkcd is a client-side JavaScript library used to generate data visualizations as scalable vector graphics directly in the browser. It functions as a graphing utility that manipulates DOM elements to produce various chart types without requiring server-side dependencies. The library is distinguished by a rendering engine that applies randomized stroke offsets and variable line weights to SVG paths. This process simulates a sketchy, hand-drawn aesthetic for data charts, creating a comic-like visual style. The project supports a variety of visualization formats, including bar, line, circu

    JavaScriptchartgraphhand-drawn
    View on GitHub↗7,838
  • spectresystems/spectre.consolespectresystems avatar

    spectresystems/spectre.console

    11,507View on GitHub↗

    spectre.console is a .NET console UI library and command-line interface framework used to build rich user interfaces for console applications. It functions as a console text markup processor and terminal layout engine to provide advanced text styling and structured data organization. The library enables the creation of visually organized interfaces using a system of tables, grids, and panels. It utilizes a dedicated markup language to apply colors and styles to terminal output, allowing for the rendering of formatted text and complex visual structures.

    C#
    View on GitHub↗11,507
  • crossterm-rs/crosstermcrossterm-rs avatar

    crossterm-rs/crossterm

    4,098View on GitHub↗

    Crossterm is a cross-platform Rust library for terminal manipulation, providing a low-level interface for controlling terminal state, cursor movement, and text styling. It acts as a cross-platform TTY interface that handles raw mode, alternate screen buffers, and terminal window metadata across different operating systems. The library includes an ANSI text styling engine for applying RGB colors and text attributes to console output, as well as a terminal input event handler for capturing keyboard presses, mouse movements, and terminal resize events in real time. It also provides system clipbo

    Rustcolorconsolecross-platform
    View on GitHub↗4,098
  • alandefreitas/matplotplusplusalandefreitas avatar

    alandefreitas/matplotplusplus

    4,894View on GitHub↗

    This C++ data visualization library is a scientific plotting framework used to create 2D and 3D charts, network graphs, and geographic maps. It operates as a multi-backend graphics library, decoupling high-level plotting logic from low-level rendering engines to support various output backends. The project distinguishes itself with a dual-interface API, providing both a global functional interface for rapid prototyping and an object-oriented interface for precise control. It features a component-based layout engine for managing tiled grids and subplots, alongside a layered plot state that all

    C++charting-librarychartscontour-plots
    View on GitHub↗4,894
  • hoffstadt/dearpyguihoffstadt avatar

    hoffstadt/DearPyGui

    15,217View on GitHub↗

    DearPyGui is a GPU-accelerated, immediate-mode graphical user interface framework for Python. It provides a high-performance toolkit for building interactive desktop applications by leveraging native hardware-accelerated rendering backends across multiple operating systems. By utilizing an immediate-mode execution model, the library offers direct control over the rendering loop and element state, enabling the creation of responsive, dynamic interfaces. The framework distinguishes itself through its ability to handle complex, high-frequency visual updates, making it suitable for real-time data

    C++cppcross-platformdearpygui
    View on GitHub↗15,217
  • jmcnamara/xlsxwriterjmcnamara avatar

    jmcnamara/XlsxWriter

    3,911View on GitHub↗

    XlsxWriter is a library for generating spreadsheets in the XLSX format, functioning as an Excel workbook writer and file generator. It provides the capability to write data, apply cell formatting, and build complex layouts across multiple worksheets. The project distinguishes itself with a memory-optimized writing mode that flushes large datasets to disk row-by-row, enabling the creation of files exceeding 4 GB while minimizing RAM consumption. It also includes a specialized mechanism for embedding binary project files and digital signatures to enable VBA macros and signed scripts within work

    Pythonchartslibxlsxwriterpandas
    View on GitHub↗3,911
  • abdenasser/neohtopAbdenasser avatar

    Abdenasser/neohtop

    8,911View on GitHub↗

    neohtop is a terminal-based system resource monitor and process manager for Linux. It provides a text-based user interface for tracking CPU and memory usage and managing active system tasks without requiring a graphical desktop environment. The utility functions as a live dashboard for observing hardware performance and resource allocation. It enables users to search, filter, and terminate system processes, with the ability to pin specific entries to ensure they remain visible during monitoring. The tool covers general system observability and process management, allowing users to isolate sp

    Svelteactivitybtopcross-platform
    View on GitHub↗8,911
  • textualize/textualTextualize avatar

    Textualize/textual

    36,285View on GitHub↗

    This project is a framework for building interactive, graphical-style terminal applications. It provides a declarative component model that organizes user interfaces into a tree of nested widgets, each managing its own lifecycle, state, and rendering. By subclassing the base application class, developers can construct complex, keyboard-navigable interfaces that run directly within terminal emulators. The framework distinguishes itself through a reactive architecture and a CSS-based layout engine. It uses a reactive attribute system to automatically track state changes and trigger targeted int

    Pythoncliframeworkpython
    View on GitHub↗36,285
  • dc-js/dc.jsdc-js avatar

    dc-js/dc.js

    7,431View on GitHub↗

    dc.js is a multi-dimensional analysis tool and visualization framework used to build interactive data dashboards. It functions as a charting library that renders diverse SVG visualizations powered by D3 and integrates natively with Crossfilter to enable coordinated filtering across large datasets. The project is distinguished by its linked-view coordination, where selecting a data range or category in one chart simultaneously updates all other connected views. This allows for dynamic data exploration through dimensional chart linking and coordinated brushing, transforming raw datasets into na

    JavaScript
    View on GitHub↗7,431
  • taiga-family/taiga-uitaiga-family avatar

    taiga-family/taiga-ui

    4,002View on GitHub↗

    Taiga UI is an Angular UI component library and accessible design system used for building enterprise web interfaces. It provides a comprehensive collection of reusable interface elements and layout tools, functioning as a mobile-first UI kit with responsive components that adapt to different device capabilities. The library distinguishes itself through an integrated data visualization library featuring various chart types and a dedicated form management framework with built-in validation and formatting for specialized data. It also features AI-driven development workflows by integrating comp

    TypeScriptangularbest-practicescdk
    View on GitHub↗4,002
  • textualize/toolongTextualize avatar

    Textualize/toolong

    3,921View on GitHub↗

    toolong is a terminal log viewer and TUI log manager designed for monitoring live log streams and navigating large log files. It functions as a log aggregator and JSONL formatter, capable of merging multiple log files into a single chronological view by automatically detecting timestamps. The application supports the visualization of structured data by pretty printing JSONL files and applying syntax highlighting to common web server log patterns. It handles large-scale data efficiently through virtual-sized scrollable views, allowing users to open compressed logs or files of any size without

    Pythonjsonlrichterminal
    View on GitHub↗3,921