awesome-repositories.com
博客
MCP
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
gyscos avatar

gyscos/Cursive

0
View on GitHub↗
4,810 星标·264 分支·Rust·MIT·4 次浏览

Cursive

Cursive 是一个跨平台终端用户界面(TUI)工具包和框架,用于在 Rust 中构建交互式应用程序。它提供了一个用于创建基于文本的图形界面的模块化系统,利用专用引擎来管理主显示循环和视图层级。

该工具包具有后端无关的抽象层,以确保在不同操作系统上具有一致的渲染和输入处理。它的特色在于基于调色板的主题引擎,支持运行时主题加载和真彩色渲染,以及直接从配置文件生成用户界面层级的能力。

该框架涵盖了广泛的功能,包括带有拆分面板和选项卡的复杂布局管理,以及各种交互式组件,如模态对话框、进度指示器和可选列表。它支持图像和语法高亮显示的富内容渲染,并采用焦点循环事件路由系统来管理键盘导航和全局回调。

状态管理通过异步 UI 更新和基于标识符的访问来处理,允许开发者从后台任务中动态修改特定视图。

Features

  • Rust TUI Frameworks - A comprehensive toolkit for building interactive text user interfaces in the Rust programming language.
  • Cross-Platform TUI Frameworks - Provides a framework for building interactive text-based user interfaces that work across multiple operating systems.
  • Terminal User Interfaces - Provides a full framework and engine for building, styling, and managing interactive text-based user interfaces.
  • Cross-Platform Terminal Utilities - Ensures consistent visual behavior and rendering for terminal applications across different operating systems.
  • Terminal Abstractions - Provides a backend-agnostic abstraction layer that normalizes terminal capabilities and input handling across different operating systems.
  • Terminal UI Frameworks - Provides a component-based architecture for creating interactive command-line interfaces with complex layouts.
  • TUI Layer Composition - Stacks visual components like text blocks and checkboxes to define screen layout and content.
  • Terminal Layout Engines - Implements a layout engine to organize complex screen arrangements using split panels, tabs, and nested views.
  • View Hierarchies - Organizes user interface elements into a parent-child tree of nested containers and widgets for structured rendering.
  • Flexible Layout Systems - Implements a flexible layout system using proportional units for responsive terminal UI design.
  • Layout Organizing Containers - Uses resizable dividers, tabs, and split panels to structure the terminal workspace layout.
  • Modular UI Compositions - Constructs complex interactive terminal applications by combining modular, independent view components.
  • Rust TUI Toolkits - Offers a comprehensive toolkit for developing terminal-based interfaces with event and state management in Rust.
  • TUI Component Rendering - Renders a wide array of terminal-based interface elements including tables, trees, and tabs.
  • View Stack Managers - Controls interface depth by pushing and popping view layers in a managed stack.
  • UI Layer Stacking - Manages multiple interface screens by stacking components to handle popups and transitions.
  • Terminal UI Layouts - Provides components for arranging interface elements within flexible containers for terminal-based applications.
  • View Identification - Tags UI elements with unique identifiers to enable mutation and retrieval from application logic.
  • Dynamic Theme Loading - Provides runtime loading of external theme files to dynamically change visual styles and enable true color rendering.
  • Global Input Listeners - Captures keyboard and mouse events to trigger application-wide actions independently of the current focus.
  • Keyboard and Mouse Event Capture - Captures and maps keyboard and mouse input to callbacks and manages focus transitions.
  • Task Progress Indicators - Renders progress bars with custom ranges and colors to visualize the completion status of tasks.
  • Interactive CLI Tooling - Enables the design of interactive CLI tools featuring menus, forms, and dialogs with real-time status updates.
  • Widget Focus Navigations - Provides keyboard-driven focus navigation to cycle through interactive GUI widgets sequentially.
  • Rich Content Renderers - Renders rich content including images, HTML markup, calendars, and hexadecimal views directly within the terminal.
  • Keyboard Navigation Interception - Intercepts key presses to execute custom logic before the default event handler processes them.
  • Asynchronous UI Refresh - Refreshes views and progress indicators using data received from asynchronous background tasks.
  • Virtual Color Palettes - Employs a palette-based theme engine using placeholder color tokens that resolve to runtime-configurable theme colors.
  • Decorative Text Effects - Decorates text with custom colors and gradients using a palette-based system for visual emphasis.
  • Identifier-Based View Mutation - Allows dynamic modification of view content and data access using unique view identifiers.
  • Architectural State Synchronizers - Implements a system to synchronize UI state changes between background tasks and the main display loop via decoupled event messaging.
  • Global Event Callbacks - Implements a system for defining and clearing global functions that respond to application-wide events.
  • Global State Managers - Maintains a global application state shared across various UI components.
  • Linear Positioning - Positions multiple UI elements side-by-side or in columns using horizontal and vertical layout containers.
  • Interactive UI Elements - Implements interactive input interfaces with buttons and selection menus to collect user data.
  • Interface Theming - Implements mechanisms for overriding default visual styles, colors, and border variables.
  • Linear Layouts - Organizes interface elements in single horizontal or vertical rows with relative stretching.
  • Modal Dialogs - Provides overlay components for focused user interaction and notifications via centered modal windows.
  • Select Inputs - Provides dropdown-style select components for choosing values from a predefined list.
  • Focus Management - Provides a system for managing keyboard focus and navigation cycles through interactive elements.
  • Dimension Controllers - Provides programmatic control over fixed widths and heights of UI elements to maintain structure.
  • Rich Text Renderers - Provides components to render text with markup decorations and support for non-ASCII characters and international languages.
  • Specialized Data Components - Renders complex data structures including tables, trees, and calendars directly within the terminal interface.
  • Syntax Highlighters - Includes syntax highlighters that render code snippets by mapping language patterns to visual styles.
  • Tabbed Navigation - Organizes multiple views into selectable tabbed sections to facilitate interface navigation.
  • Terminal Data Visualizations - Renders structured information including tables, trees, and progress bars using text-based graphics in the terminal.
  • Text Input Fields - Implements editable text fields for capturing single-line and multi-line string input from the user.
  • Text Markup Parsers - Parses and displays formatted text using a dedicated system to apply visual styles and gradients.
  • User Input Capture - Collects user data via text fields and sliders to drive the internal application logic.
  • TUI Scroll Views - Wraps content in scroll views to control positioning and handle scrolling events.
  • Window Management Components - Provides framed window containers for organizing content with titles and interactive buttons.
  • Instance Identifiers - Uses unique identifiers assigned to view instances to allow targeted updates and communication from external callbacks.
  • 开发者工具 - Library for building rich TUI applications.

Star 历史

gyscos/cursive 的 Star 历史图表gyscos/cursive 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

常见问题解答

gyscos/cursive 是做什么的?

Cursive 是一个跨平台终端用户界面(TUI)工具包和框架,用于在 Rust 中构建交互式应用程序。它提供了一个用于创建基于文本的图形界面的模块化系统,利用专用引擎来管理主显示循环和视图层级。

gyscos/cursive 的主要功能有哪些?

gyscos/cursive 的主要功能包括:Rust TUI Frameworks, Cross-Platform TUI Frameworks, Terminal User Interfaces, Cross-Platform Terminal Utilities, Terminal Abstractions, Terminal UI Frameworks, TUI Layer Composition, Terminal Layout Engines。

gyscos/cursive 有哪些开源替代品?

gyscos/cursive 的开源替代品包括: migueldeicaza/gui.cs — gui.cs is a .NET terminal user interface toolkit and framework used to build interactive, cross-platform text-based… rivo/tview — tview is a library for building interactive text-based user interfaces in Go. It functions as a toolkit for managing… willmcgugan/textual — Textual is a Python TUI framework and asynchronous UI library used to build interactive text user interfaces. It… fdehau/tui-rs — tui-rs is a Rust framework for building rich terminal user interfaces and dashboards. It provides a terminal layout… gui-cs/terminal.gui — Terminal.Gui is a cross-platform .NET toolkit for building interactive text-based user interfaces. It provides a… cosscom/coss — Coss is an accessible UI component library and design system framework used to build web interfaces. It provides a…

Cursive 的开源替代方案

相似的开源项目,按与 Cursive 的功能重合度排序。
  • migueldeicaza/gui.csmigueldeicaza 的头像

    migueldeicaza/gui.cs

    11,070在 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#
    在 GitHub 上查看↗11,070
  • rivo/tviewrivo 的头像

    rivo/tview

    13,928在 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
    在 GitHub 上查看↗13,928
  • willmcgugan/textualwillmcgugan 的头像

    willmcgugan/textual

    36,292在 GitHub 上查看↗

    Textual is a Python TUI framework and asynchronous UI library used to build interactive text user interfaces. It provides a component-based architecture for creating cross-platform applications that run in both terminal and web browser environments. The framework distinguishes itself by utilizing a CSS-based layout engine to apply visual styles to widgets and a command palette interface for discovering and executing application functions. It also supports hosting terminal-based interfaces on the web to enable remote access via a standard browser. The toolkit covers a broad range of capabilit

    Python
    在 GitHub 上查看↗36,292
  • fdehau/tui-rsfdehau 的头像

    fdehau/tui-rs

    10,875在 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
    在 GitHub 上查看↗10,875
  • 查看 Cursive 的所有 30 个替代方案→