Command-line

52 projects

Almost every Rust command-line tool starts with clap for argument parsing. Its derive API turns a struct into a parser with help text and validation, while the builder API suits arguments that are assembled at runtime. StructOpt pioneered the derive style and was folded into clap, so new code should use clap directly. argh, from Google, is a lighter option with fewer features and a smaller binary.

For full-screen terminal interfaces, Ratatui is the actively maintained successor to tui-rs. It draws widgets in immediate mode on top of a backend such as crossterm, which works on Windows, macOS and Linux, or termion, which is Unix-only. Cursive takes a higher-level approach with views, layouts and event callbacks, and iocraft offers a React-style component model.

The smaller pieces matter too. indicatif draws progress bars and spinners, inquire and dialoguer handle interactive prompts, rustyline and reedline provide line editing with history, tabled and comfy-table print tables, colored adds ANSI colours, and human-panic replaces raw panic output with a friendly crash report. duct makes running and piping child processes less error-prone.

rust-fireby aiskArgument parsing

Turn your function(s) to a command line app with one line of code

fire0.6.155/90d updated 23d ago

9

clap-rsArgument parsing

A simple to use, full featured command-line argument parser

clap4.6.7260.7m/90d updated 14d ago

16.8k

cliparserArgument parsing

Simple command line parser.

cliparser0.1.2223k/90d

docopt.rsby docoptArgument parsing

Implementation of DocOpt

docopt1.1.11.1m/90d archived

746

arghby googleArgument parsing

An opinionated Derive-based argument parser optimized for code size

argh0.1.193m/90d updated 4mo ago

2k

quicliby killercupArgument parsing

Quickly build cool CLI apps

quicli0.4.085.6k/90d archived

536

seahorseby ksk001100Argument parsing

A minimal CLI framework

seahorse2.2.033.6k/90d updated 5mo ago

307

structoptby TeXitoiArgument parsing

Parse command line argument by defining a struct

structopt0.3.266.4m/90d updated 2y ago

2.7k

comfy-tableby nukesorData visualization

Beautiful dynamic tables for your cli tools.

comfy-table8.0.121.3m/90d updated 25d ago

1.4k

tabledby zhiburtData visualization

An easy to use library for pretty print tables of structs and enums.

tabled0.22.010.8m/90d updated 1mo ago

2.4k

human-panicby rust-cliHuman-centered design

Panic messages for humans

human-panic2.0.82.7m/90d updated 16d ago

1.9k

rustylineby kkawakamLine editor

Readline implementation

rustyline19.0.013.6m/90d updated 1d ago

1.9k

linerby MovingtoMarsLine editor

A library offering readline-like functionality

liner0.4.41.6k/90d updated 3y ago

71

linefeedby murarthLine editor

Configurable, extensible, interactive line reader

linefeed0.6.047.4k/90d updated 6y ago

193

reedlineby nushellLine editor

A feature-rich line editor powering Nushell. Supports syntax highlighting, tab completions, multiline, history, vi/emacs keybindings, and Unicode.

reedline0.52.1989.9k/90d updated 2d ago

825

rust-copperlineby srijsLine editor

Command line editing library

copperline0.3.0714/90d updated 10y ago

27

update-informerby mgrachevOther

Update informer for CLI applications. It checks for a new version on Crates.io and GitHub

update-informer1.3.0388.3k/90d updated 6mo ago

228

rust-subprocessby hniksicPipeline

Facilities for interaction with external pipelines

subprocess1.2.12.8m/90d updated 2mo ago

452
p

pager-rsby impPipeline

Pipe your output through an external pager

pager0.16.1126.7k/90d

duct.rsby oconnor663Pipeline

A builder for subprocess pipelines and IO redirection

duct1.1.28.6m/90d updated 1mo ago

1k

rexpectby rust-cliPipeline

Automate interactive applications such as ssh, ftp, passwd, etc

rexpect0.7.1443.9k/90d updated 1mo ago

391

expectrlby zhiburtPipeline

A library for controlling interactive programs in a pseudo-terminal

expectrl0.9.0397.1k/90d updated 5mo ago

215

pbby a8mProgress

Console progress bar

pbr1.1.1341.4k/90d updated 2y ago

598

kdamby cliticProgress

A console progress bar library inspired by tqdm & rich.progress

kdam0.6.4104.5k/90d updated 9mo ago

247

indicatifby console-rsProgress

Indicate progress to users

indicatif0.18.652.5m/90d updated 1d ago

5.2k

spinachby etienne-napoleoneProgress

Practical spinner.

spinach3.2.02.6k/90d updated 10mo ago

120

spinnersby FGRibreauProgress

60+ elegant terminal spinners

spinners4.2.0678k/90d updated 5mo ago

600

rattlesby vyforProgress

A minimal, dependency-free terminal spinner library.

rattles0.3.121.6k/90d updated 4mo ago

1k

terminal_cli.rsby hashmismatchPrompt

Build an interactive command prompt

terminal_cli0.2.070/90d updated 5y ago

59

inquireby mikaelmelloPrompt

A library for building interactive prompts on terminals.

inquire0.9.44.9m/90d updated 14d ago

2.6k

starshipPrompt

A minimal, blazing fast, and extremely customizable prompt for any shell

starship1.27.028.7k/90d

promkitby ynqaPrompt

A toolkit for building interactive command-line tools

promkit0.17.034.4k/90d updated 24d ago

472

coloredby colored-rsStyle

Coloring terminal so simple, you already know how to do it!

colored3.1.149.5m/90d updated 9mo ago

2k

dialoguerby console-rsStyle

Library for command line prompts and similar things.

dialoguer0.12.018.2m/90d updated 7d ago

1.6k

buntby LukasKalbertodtStyle

Cross-platform terminal colors and styling with macros

bunt0.2.99.7k/90d updated 1y ago

232

term-painterby LukasKalbertodtStyle

Cross-platform styled terminal output

term-painter0.4.025.3k/90d updated 2y ago

79

rust-ansi-termby oghamStyle

Control colours and formatting on ANSI terminals

ansi_term0.12.118.9m/90d updated 2y ago

483

yansiby SergioBenitezStyle

A dead simple ANSI terminal color painting library

yansi1.0.161m/90d updated 2y ago

277

AppCUIby gdt050579TUI

A full-featured, cross-platform TUI/CUI framework in Rust, with built-in widgets, layout control, animations, Unicode and theming support.

appcui0.5.46.5k/90d updated 5d ago

404

bearlibterminalby cfyziumBearLibTerminal

BearLibTerminal bindings

bear-lib-terminal2.0.03.2k/90d updated 6y ago

32

iocraftby ccbrownTUI

A crate for beautiful, artisanally crafted CLIs, TUIs, and text-based IO.

iocraft0.9.354.3k/90d updated today

1.6k

Cursiveby gyscosTUI

Build rich TUI applications

cursive0.21.1524.6k/90d updated 25d ago

4.9k

titikby ivancerasTUI

A crossplatform TUI widget library with the goal of providing interactive widgets

titik0.3.154/90d updated 4y ago

123

pancursesby ihalilancurses

Curses library, supports linux and windows

pancurses0.17.033.4k/90d updated 2y ago

415

ncurses-rsby jeayencurses

Ncurses bindings

ncurses6.0.1102.6k/90d archived

687

rust-term-gridby oghamTUI

Library for putting things in a grid

term_grid0.2.057.8k/90d updated 3y ago

70

ratatuiby ratatui-orgTUI

Library that's all about cooking up terminal user interfaces (TUIs)

ratatui0.30.222.5m/90d updated today

23k

termionby redox-osTUI

Bindless library for controlling terminals/TTY

termion4.0.63.9m/90d updated 10mo ago

2.2k

rutermTUI

Tiny & simple library for working with TTY

ruterm0.3.24/90d

SuperLightTUIby subiniumTUI

Immediate-mode TUI library with 50+ widgets, flexbox layout, and animation system

superlighttui0.26.01.8k/90d updated 2d ago

194

rustboxby gchpTermbox

Bindings to Termbox

rustbox0.11.05k/90d updated 6y ago

469

crosstermby TimonPostTUI

Crossplatform terminal library

crossterm0.29.051.1m/90d updated 1d ago

4.2k

Built on the open rust-unofficial/awesome-rust list by its contributors, licensed CC0 1.0. Crate Atlas is an independent project, not affiliated with the list's maintainers.

About Synced Oct 21, 2026

© 2026 Crate Atlas

Esc

Type to search every entry. ↑↓ to move, Enter to open.