
A curated list of command line apps.
Inspired by the awesome list
thing.
Table of Contents
Entertainment
- newsboat - An
extendable RSS feed reader for text terminals.
Music
Video
- youtube-dl -
Download videos from YouTube.com and many other video sites.
- streamlink -
Extract streams from various websites to a video player of your
choosing.
- mps-youtube
- Youtube player.
- mpv - Superior video player.
- editly - Declarative
video editing.
- yt-dlp - A
youtube-dl fork with additional features and fixes.
Movies
- moviemon -
Everything about your movies.
- movie - Get movie
info or compare movies.
Games
Books
Chat
- WeeChat - Fast, light and
extensible chat client.
- irssi - IRC chat
client.
- kirc - Tiny IRC
client.
Development
- legit - Generate
Open Source licences as files or file headers.
- mklicense -
Create a custom LICENSE file painlessly with customized info.
- rebound - Fetch
Stack Overflow results on compiler error.
- foy - Lightweight
general purpose task runner/build tool.
- just - Modern
make-like command runner.
- bcal - Byte CALculator
for storage conversions and calculations.
- bitwise - Base
conversion and bit manipulation.
- cgasm - x86 assembly
documentation.
- grex - Generate
regular expressions from user-provided test cases.
- gdb-dashboard -
Modular visual interface for GDB.
- iola - Socket
client with REST API.
- add-gitignore
- Interactively generate a .gitignore for your project based on your
needs.
- is-up-cli -
Check if a domain is up.
- reachable -
Check if a domain is up.
- loadtest -
Run load tests.
- diff2html-cli -
Create pretty HTML from diffs.
Text Editors
- emacs - An
extensible, customizable, free/libre text editor — and more.
- vim - Vim - the ubiquitous
text editor.
- neovim - Modern
vim.
- kakoune - Modal
editor inspired by vim.
- micro - A simple and
intuitive editor.
- o - Configuration-free
text editor and IDE.
- helix - Modal
editor inspired by kakoune.
Frontend Development
Mobile Development
Database
- mycli - MySQL client
with autocompletion and syntax highlighting.
- pgcli - Postgres client
with autocompletion and syntax highlighting.
- sqlline - Shell
for issuing SQL via JDBC.
- iredis - Redis
client with autocompletion and syntax highlighting.
- usql - Universal SQL client
with autocompletion and syntax highlighting.
Devops
- htconvert -
Convert .htaccess redirects to nginx.conf redirects.
- SAWS -
Supercharged AWS CLI.
- s3cmd -
Fully-Featured S3 client.
- pm2 - Production
Process Manager for Node.js.
- ops - Unikernel
compilation and orchestration tool.
- flog - A fake log
generator for log formats such as apache-common, apache error and
RFC3164 syslog.
- k9s - Manage
Kubernetes Clusters.
- PingMe - Send
messages/alerts to multiple messaging platforms & email.
- ipfs-deploy
- Deploy static websites to IPFS.
- Discharge -
Deploy static websites to Amazon S3.
- updatecli - A
declarative dependency management tool.
Docker
- lstags -
Synchronize images across registries.
- dockly -
Interactively manage containers.
- lazydocker
- Simple docker/docker-compose interface.
- docker-pushrm
- Push a readme to container registries.
Release
- release-it -
Automate releases for Git repositories and/or npm packages. Changelog
generation, GitHub/GitLab releases, etc.
- clog - A
conventional changelog for the rest of us.
- np - A better
npm publish.
- release - Generate
changelogs with a single command.
- semantic-release
- Fully automated version management and package publishing.
Npm
- npm-name-cli -
Check whether a package name is available on npm.
- npm-user-cli -
Get user info of a npm user.
- npm-home -
Open the npm page of the package in the current directory.
- pkg-dir-cli -
Find the root directory of a npm package.
- npm-check-updates
- Find newer versions of package dependencies than what your
package.json allows.
- updates -
Flexible npm dependency update tool.
- wipe-modules -
Remove
node_modules of inactive projects.
Boilerplate
- yo - Scaffolding tool for
running Yeoman generators.
- boilr - Create projects
from boilerplate templates.
- cookiecutter -
Create projects from templates.
- mevn-cli -
Light speed setup for MEVN (Mongo Express Vue Node) Apps.
- scaffold-static
- Scaffolding utility for vanilla JS.
HTTP Server
- serve - Serve static
files (https, CORS, GZIP compression, etc).
- simplehttp -
Easily serve a local directory over HTTP.
- shell2http - Shell
script based HTTP server.
HTTP Client
- HTTPie - A
user-friendly HTTP client.
- HTTP Prompt -
Interactive HTTP client featuring autocomplete and syntax
highlighting.
- ain - HTTP client with
a simple format to organize API endpoints.
- curlie - A curl frontend
with the ease of use of HTTPie.
Productivity
- doing - Keep track
of what you’re doing and track what you’ve done.
- ffscreencast -
A ffmpeg screencast with video overlay and multi monitor support.
- meetup-cli -
Meetup.com client.
- NeoMutt - Email client.
- terjira - Jira
client.
- ipt - Pivotal
Tracker client.
- uber-cli - Uber
client.
- Buku -
Browser-independent bookmark manager.
- papis - Extensible
document and bibliography manager.
- pubs - Scientific
bibliography manager.
- fjira - Fuzzy finder and
TUI application for Jira.
Time Tracking
- Timetrap - Simple
timetracker.
- moro - Simple tool for
tracking work hours.
- Timewarrior
- Utility with simple stopwatch, calendar-based backfill and flexible
reporting.
- Watson - Generate
reports for clients and manage your time.
- utt - Simple time
tracking tool.
- Bartib - Easy to
use time tracking tool.
- arttime -
Featureful timer with native desktop notifications and curated ASCII
art.
Note Taking and Lists
- idea - A
lightweight tool for keeping ideas in a safe place quick and easy.
- geeknote
- Evernote client.
- Taskwarrior - Manage your
TODO list.
- Terminal
velocity - A fast note-taking app.
- eureka - Input and
store your ideas.
- sncli - Simplenote
client.
- td-cli - A TODO
manager to organize and manage your TODO’s across multiple
projects.
- taskbook -
Tasks, boards & notes for the command-line habitat.
- dnote - A interactive,
multi-device notebook.
- nb - A note‑taking,
bookmarking, archiving, and knowledge base application.
- obs -
Interact with your Obsidian vault.
Finance
See plaintextaccounting.org for a
great overview of relevant tools.
- ledger - Powerful,
double-entry accounting system.
- hledger - Robust, fast, intuitive
plain text accounting tool with CLI, TUI and web interfaces.
- moeda -
Foreign exchange rates and currency conversion.
- cash-cli - Convert
Currency Rates.
- cointop - Track
cryptocurrencies.
- ticker -
Stock ticker.
Presentations
- WOPR - A simple markup
language for creating rich terminal reports, presentations and
infographics.
- decktape - PDF
exporter for HTML presentations.
- mdp - A markdown
presentation tool.
- sent - Simple
plaintext presentation tool.
- slides - A
markdown presentation tool.
Calendars
- calcurse - Calendar and
scheduling.
- gcalcli - Google
calendar client.
- khal - CalDAV ready
CLI and TUI calendar.
- vdirsyncer -
CalDAV sync.
- remind - A
sophisticated calendar and alarm program.
- birthday -
Know when a friend’s birthday is coming.
Utilities
- aria2 - HTTP,
FTP, SFTP, BitTorrent and Metalink download utility.
- bitly-client
- Bitly client.
- deadlink - Find
dead links in files.
- crawley - Unix-way web
crawler.
- kill-tabs -
Kill all Chrome tabs.
- alex - Catch
insensitive, inconsiderate writing.
- clevercli -
Collection of ChatGPT powered utilities.
macOS
Terminal Sharing Utilities
- gotty - Share your
terminal as a web application.
- localtunnel
- Expose your localhost to the world for easy testing and sharing.
- mosh - Remote SSH client that allows
roaming with intermittent connectivity.
- ngrok - Secure introspectable
tunnels to localhost.
- tmate - Instant terminal (tmux)
sharing.
- warp - Secure and simple
terminal sharing.
- OverTime -
Time-overlap tables for remote teams.
Network Utilities
Theming and Customization
- splash-cli -
Beautiful wallpapers from Unsplash.
- wallpaper-cli -
Get or set the desktop wallpaper.
- themer - Generate
personalized themes for your editor, terminal, wallpaper, Slack, and
more.
- JackPaper - Set
images from Unsplash as wallpaper.
- QuickWall -
Directly set wallpapers from Unsplash.
- oh-my-posh - Prompt theme
engine.
Shell Utilities
- has - Checks for the
presence of various commands and their versions on the path.
- Ultimate Plumber - Write
Linux pipes with live previews.
- fkill-cli -
Simple cross-platform process killer.
- task-spooler -
Queue jobs for linear execution.
- undollar -
Strip the ‘$’ preceding copy-pasted terminal commands.
- pipe_exec - Run
executables from stdin, pipes and ttys without creating a temporary
file.
System Interaction Utilities
Markdown
- DocToc - Generates
table of contents for markdown files.
- grip - Preview
markdown files as GitHub would render them.
- mdv
- Styled terminal markdown viewer.
- glow - Styled
markdown rendering.
- gtree - Use markdown
to generate directory trees and the directories itself.
Security
- pass - Password
manager.
- gopass -
Fully-featured password manager.
- xiringuito -
SSH-based VPN.
- hasha-cli -
Get the hash of text or stdin.
- ots - Share
secrets with others via a one-time URL.
Math
- mdlt - Do quick math
right from the command line.
- Qalculate -
Calculate non-trivial math expressions. Unit conversions, symbolic
calculations and more.
Weather
Browser Replacement
- s - Open a web search in
your terminal.
- hget - Render
websites in plain text from your terminal.
- mapscii -
Terminal Map Viewer.
- nasa-cli -
Download NASA Picture of the Day.
- getnews.tech -
Fetch news headlines from various news outlets.
- trino -
Translation of words and phrases.
- translate-shell -
Google Translate interface.
Internet Speedtest
- speedtest-net -
Test internet connection speed and ping using speedtest.net.
- speed-test
-
speedtest-net wrapper with different UI.
- speedtest-cli -
Test internet bandwidth using speedtest.net.
- bandwhich - Track
bandwidth utilization by process.
Command Line Learning
- cmdchallenge - Presents small
shell challenge with user submitted solutions.
- explainshell - Type a
snippet to see the help text for each argument.
- howdoi - Instant
coding answers.
- how2 - Node.js
implementation of howdoi.
- The Fuck - Magnificent
app which corrects your previous console command.
- tldr - Simplified
and community-driven man pages.
- Wat - Instant, central,
community-built docs.
- teachcode -
Guide for the earliest lessons of coding.
- navi - Interactive
cheatsheet tool.
- yai - AI powered
terminal assistant.
Data Manipulation
- visidata -
Spreadsheet multitool for data discovery and arrangement.
Processors
- jq - JSON
processor.
- yq - YAML
processor.
- dasel -
JSON/YAML/TOML/XML processor (like jq/yq).
- yaml-cli -
Query/update YAML.
- ramda-cli - Process
data with functional pipelines.
- xq - XML and HTML
beautifier and content extractor.
JSON
- jp - JSON
parser.
- fx - Command-line JSON
viewer.
- vj - Makes JSON human
readable.
- underscore-cli -
Utility-belt for hacking JSON and Javascript.
- strip-json-comments-cli
- Strip comments from JSON.
- GROQ – JSON
processor with queries and projections.
- gron - Make JSON
greppable.
YAML
Columns
- parse-columns-cli
- Parse text columns to JSON.
- q - Execution of SQL-like
queries on CSV/TSV/tabular text file.
Text
- figlet - Creates large text out
of ASCII characters.
- stegcloak - Hide
secrets with invisible characters in plain text securely.
Files and Directories
File Managers
- ranger - A console
file manager with VI key bindings.
- midnight-commander -
A feature rich visual file manager.
- Vifm - VI influenced file
manager.
- nnn - File browser and
disk usage analyzer with excellent desktop integration.
- lf - Fast, extensively
customizable file manager.
- clifm - The command
line file manager.
- far2l - Orthodox file
manager.
- yazi - Blazing fast
file manager.
Deleting, Copying, and
Renaming
Files
- chokidar-cli -
CLI to watch file system changes.
- file-type-cli -
Detect the file type of a file or stdin.
- bat - A cat clone with
syntax highlighting.
- NCDu - A disk usage
analyzer with an ncurses interface.
- unix-permissions
- Swiss Army knife for Unix permissions.
- transmission-cli - Torrent
client for your command line.
- webtorrent-cli –
Streaming torrent client.
- entr - Run an
arbitrary command when files change.
- organize-cli -
Organize your files automatically.
- organize-rt -
organize-cli in Rust with more customization.
- RecoverPy -
Recover overwritten or deleted files.
File Sync/Sharing
- rclone - Sync files with
various cloud providers.
- ffsend - Quick file
share.
- share-cli -
Share files with your local network.
- google-drive-upload
- Upload/sync with Google Drive.
- gdrive-downloader
- Download files/folders from Google Drive.
- portal - Send
files between computers.
- shbin - Turn a
Github repo into a pastebin.
- sharing - Send
and receive files on your mobile device.
- ncp - Transfer files and
folders, to and from NFS servers.
Directory Listing
- alder - Minimal
tree with colors.
- eza - Improved
version of
ls.
- tre -
tree
with git awareness, editor aliasing, and more.
- ll -
ls
with git status.
- lsd -
ls
with many extra features.
Directory Navigation
- autojump - A cd
command that learns - easily navigate directories from the command
line.
- pm - The easy way
to switch to your projects on the shell.
- z - z is the new j, yo.
- PathPicker -
After parsing the output from a command, PathPicker presents you with a
nice UI to select which files you’re interested in.
- fz - Seamless
fuzzy tab completion for z.
- goto - Directory
aliases for the shell with autocomplete.
- z.lua -
cd command that learns your habits.
- zoxide - Fast
directory jumper in Rust.
- tere - A faster
alternative to using cd and ls.
Search
- happyfinder - (another)
Fuzzy file finder for the command line.
- find-up-cli -
Find a file by walking up parent directories.
- ripgrep - A
line-oriented search tool that recursively searches your current
directory for a regex pattern.
- fzf - A general
purpose command-line fuzzy finder, can be used with any list:
files/directories, command history, processes, hostnames, bookmarks, git
commits, etc.
- fselect - Find
files with SQL-like queries.
- fd - A simple, fast and
user-friendly alternative to
find.
- broot - Fuzzy finder
similar to fzf, but with space usage visualization.
- rare - Real-time regex
aggregation and analysis.
- skim - A general
fuzzy finder written in rust, similar to fzf.
- ast-grep - A tool
for code structural search, linting and rewriting.
Version Control
- SnowFS - A fast,
scalable version control system for binaries.
Git
GitHub
Emoji
Images
Gif Creation
- gifgen - Simple
high quality GIF encoding.
- gifsicle - Create,
manipulate, and optimize GIF images and animations.
- ttygif - Convert
terminal recordings to animated gifs.
- ttygif - ttyrec to
gif.
- ttystudio - A
terminal-to-gif recorder minus the headaches.
- asciinema -
Terminal session recorder and companion app for asciinema.org.
- givegif - GIFs on the
command line.
Image Conversion
- imagemagick - Gold standard
for anything images.
- imgp - Blazing fast
batch image resizer and rotator.
- korkut - Quick
and simple image processing.
Screensavers
Graphics
Just for Fun
- quote-cli -
Get a random quote or the quote of the day in your CLI.
- fortune - Shows
a random fortune.
- ponysay - Pony
rewrite of cowsay.
- yosay - Like cowsay,
but for yeoman.
- lolcat - Outputs
text in rainbow colors.
- text-meme
- Generate text memes.
- dankcli - Add text
to meme image templates.
- ricksay - Quotes
from Rick and Morty.
Emoji
- emoj - Find
relevant emoji from text on the command-line.
- emoji-finder -
Quickly find and copy emoji to the clipboard via the command-line.
- oji - Interactive text
emoji maker.
Other Awesome Lists
License

To the extent possible under law, Adam Garrett-Harris has waived
all copyright and related or neighboring rights to this work.
cliapps.md
Github