Rust TUI

Open-source Rust projects categorized as TUI

Top 23 Rust TUI Projects

  • gitui

    Blazing πŸ’₯ fast terminal-ui for git written in rust πŸ¦€

    Project mention: GitUI | news.ycombinator.com | 2024-01-07

    I was missing interactive rebase, as it is missing from libgit2

    https://github.com/extrawurst/gitui/issues/32

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • yazi

    πŸ’₯ Blazing fast terminal file manager written in Rust, based on async I/O.

    Project mention: Command Line Tools I Like (2022) | news.ycombinator.com | 2024-10-09

    I used to use ranger, but have since switched to yazi[1] for speed and out of the box image support. (Ranger can do the same, but I think you have to set the preview_images_method[2]).

    [1] https://yazi-rs.github.io

  • ratatui

    A Rust crate for cooking up terminal user interfaces (TUIs) πŸ‘¨β€πŸ³πŸ€ https://ratatui.rs

    Project mention: The Modern CLI Renaissance | news.ycombinator.com | 2024-09-10

    Excellent article of what is going on in the terminal space, agree on the TUI section where we are seeing lots of terminal tools being built in Rust and Go and libraries such as Ratatui [1] and Bubble Tea [2] becoming a new modern alternative to ncurses for building TUIs.

    Python has Textualize which is also very popular for building terminal user interfaces [3]

    And we've noticed this renaissance as well of new CLI and TUI tools that we list on Terminal Trove [4].

    [1] https://ratatui.rs/

    [2] https://github.com/charmbracelet/bubbletea

    [3] https://textual.textualize.io/

    [4] https://terminaltrove.com/

  • bottom

    Yet another cross-platform graphical process/system monitor.

    Project mention: πŸšπŸ¦€Shell Commands Rewritten in Rust | dev.to | 2024-06-17

    bottom

  • oha

    Ohayou(γŠγ―γ‚ˆγ†), HTTP load generator, inspired by rakyll/hey with tui animation.

    Project mention: Combining Node.js with Async Rust for remarkable performance | dev.to | 2024-06-18

    For each benchmark we took the best result of five runs. Each run was performed by making as many requests as possible with 150 concurrent workers, over 10s. The load generation was performed with oha, a Rust and Tokio-based HTTP load testing tool.

  • viddy

    πŸ‘€ A modern watch command. Time machine and pager etc.

    Project mention: Release of Viddy v1.0.0: Migration from Go to Rust | dev.to | 2024-08-22

    // https://github.com/sachaos/viddy/blob/4dd222edf739a672d4ca4bdd33036f524856722c/src/cli.rs#L96-L105 fn parse_duration_from_str(s: &str) -> Result { match humantime::parse_duration(s) { Ok(d) => Ok(Duration::from_std(d)?), Err(_) => { // If the input is only a number, we assume it's in seconds let n = s.parse::()?; Ok(Duration::milliseconds((n * 1000.0) as i64)) } } }

  • Cursive

    A Text User Interface library for the Rust programming language

  • xplr

    A hackable, minimal, fast TUI file explorer

    Project mention: Superfile – A fancy, petty terminal file manager | news.ycombinator.com | 2024-05-10

    I love that there are a lot of great options in this space. This one looked nice due to its selection pane: https://xplr.dev/

  • trippy

    A network diagnostic tool

    Project mention: How Raw sockets behave differently in macOS and Linux | news.ycombinator.com | 2024-09-18

    OP, you may find this [1] β€œtrick” useful. It allows you to dynamically determine the correct byte order for the various IPv4 headers for the platform and thus avoid the need to statically decide on the byte ordering for each platform you intend to target.

    You may also find this [2] table useful, it shows which platforms allow the combination of IPPROTO_ICMP + IP_HDRINCL so it may be used without elevated privileges.

    In general, my experience of raw sockets is that they are not very β€œraw” at all, the OS can and does still perform a variety modifications and additions to what you send and receive, in highly platform specific and often poorly documented ways. In particular, TCP and raw sockets should generally be avoided.

    [1] https://github.com/fujiapple852/trippy/blob/master/crates/tr...

    [2] https://github.com/fujiapple852/trippy/issues/101#issuecomme...

  • spotify-player

    A Spotify player in the terminal with full feature parity

    Project mention: Spotify Player in Terminal | news.ycombinator.com | 2024-08-31
  • joshuto

    ranger-like terminal file manager written in Rust

    Project mention: Use Midnight Commander like a pro (2015) | news.ycombinator.com | 2024-01-21
  • ox

    An independent Rust text editor that runs in your terminal!

  • crossterm

    Cross platform terminal library rust

    Project mention: Build a password manager with Rust - Part 2 | dev.to | 2024-06-01

    I'm going to anticipate a "problem" we are going to encounter. For my use case, I would like the user to press Q or Enter to confirm or not that she wants to save a weak password. From what I understood, it's not straightforward to do this with the same io::stdin we used before because of the line-buffered nature of most terminals. Meaning, we have to wait for the user to press Enter to read the input. So, we are going to use the crossterm crate that allow us to read single chars from user's input. We can add it with: cargo add crossterm

  • gobang

    A cross-platform TUI database management tool written in Rust

    Project mention: Rainfrog – a database management TUI for Postgres | news.ycombinator.com | 2024-09-16

    Looks sleek! But I’m curious, what made you decide that gobang[0] wasn’t cutting it for you?

    [0] https://github.com/TaKO8Ki/gobang

  • dijo

    scriptable, curses-based, digital habit tracker

  • zenith

    Zenith - sort of like top or htop but with zoom-able charts, CPU, GPU, network, and disk usage

    Project mention: Zenith: Like top/htop with zoomable charts of CPU, GPU, network and disk usage | news.ycombinator.com | 2024-05-22
  • kmon

    Linux Kernel Manager and Activity Monitor πŸ§πŸ’»

  • binsider

    Analyze ELF binaries like a boss πŸ˜ΌπŸ•΅οΈβ€β™‚οΈ

    Project mention: Binsider – Analyze binaries without leaving the terminal | news.ycombinator.com | 2024-09-30
  • Termion

    Mirror of https://gitlab.redox-os.org/redox-os/termion

  • kdash

    A simple and fast dashboard for Kubernetes

  • inquire

    A Rust library for building interactive prompts

    Project mention: Show HN: Muse, a CLI background music player | news.ycombinator.com | 2024-01-17

    nice work!

    can I use "cargo install --git https://github.com/aabiji/muse"?

    I also recommend:

    https://github.com/ratatui-org/ratatui

    https://github.com/mikaelmello/inquire

    for your further development

    I also have a Rust CLI music project here if you want to have a look

    https://github.com/glicol/glicol-cli

  • ATAC

    A simple API client (postman like) in your terminal

    Project mention: My last weeks GitHub contributions | dev.to | 2024-04-27
  • gitu

    A TUI Git client inspired by Magit

    Project mention: Magit 4.0 Released | news.ycombinator.com | 2024-08-09

    There's a kind of "Magit Imitation" project https://github.com/altsem/gitu that aims to do what it does but sans-emacs. And it's ... fine... but what I realized once I started playing with it was that a large part of what makes magit.. magic... is the editor / buffers being right there.

    I've still not fully absorbed magit, and mostly just use the command line and the emacs interactive git rebase mode, but I go in there once in a while. And wow. So cool.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

Rust TUI discussion

Log in or Post with

Rust TUI related posts

Index

What are some of the best open-source TUI projects in Rust? This list will help you:

Project Stars
1 gitui 18,368
2 yazi 15,233
3 ratatui 10,214
4 bottom 9,945
5 oha 5,499
6 viddy 4,714
7 Cursive 4,267
8 xplr 4,155
9 trippy 3,538
10 spotify-player 3,473
11 joshuto 3,428
12 ox 3,312
13 crossterm 3,222
14 gobang 2,887
15 dijo 2,809
16 zenith 2,619
17 kmon 2,522
18 binsider 2,430
19 Termion 2,100
20 kdash 2,086
21 inquire 1,966
22 ATAC 1,889
23 gitu 1,792

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com