Command Line Apps

Entertainment 1) Music, Social Media, Video, Movies, Games, Books

Development 2) Text Editors, Web Development, Mobile Development, Database, Devops, Release, Npm, Boilerplate - Productivity 3) Time Tracking, Note Taking and Lists, Finance, Presentations, Calendars

Utilities 4) macOS, Terminal Sharing Utilities, Network Utilities, Theming and Customization, Shell Utilities, System Interaction Utilities - Command Line Learning

Data Manipulation 5) JSON, Text - Files and Directories 6) File Managers; Deleting, Copying, and Renaming; Files, Directory Listing, Directory Navigation, Search - Version Control 7) Git

Images 8) Gif Creation, Image Conversion, SVG, Screensavers, Graphics, Just for Fun, Other - Emoji

References

Entertainment

football-cli - Get live scores, fixtures, standings of almost every football competition/league.

pockyt - Read, Manage, and Automate your Pocket collection.

newsboat - An extendable RSS feed reader for text terminals.

Music

cmus - Small, fast and powerful console music player.

Instant-Music-Downloader - Instant music downloader.

itunes-remote - Control iTunes via CLI.

pianobar - Pandora client.

somafm-cli - Listen to SomaFM in your terminal.

nehm - Download tracks from SoundCloud.

mpd - Music Player Daemon.

ncmpcpp - mpd client.

moc - Console audio player for Linux/UNIX.

musikcube - Cross-platform, terminal-based music player, audio engine, metadata indexer, and server.

beets - Music library manager and tagger.

playx - Stream songs/playlists from various sources.

spotify-tui - Spotify client.

Social Media

facebook-cli - Facebook command line interface.

TTYtter - Twitter client.

Rainbowstream - A smart and nice Twitter client on the terminal.

tuir - Reddit TUI.

WeeChat - Fast, light and extensible chat client.

irssi - IRC chat client.

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.

Movies

moviemon - Everything about your movies.

movie - Get movie info or compare movies.

Games

Dwarf Fortress - Roguelike construction and management simulation.

Cataclysm-DDA - Turn-based survival game set in a post-apocalyptic world.

Books

epr - epub reader.

Bible.Js CLI - Bible.

SpeedRead - Spritz-alike speedreader.

Development

bcal - Byte CALculator for storage conversions and calculations.

cgasm - Gives x86 assembly documentation.

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 in your terminal when you get a compiler error.

grip - Preview markdown files with GitHub styles before committing them.

bitwise - Base conversion and bit manipulator in ncurses.

foy - Lightweight general purpose task runner/build tool.

Text Editors

emacs - An extensible, customizable, free/libre text editor — and more.

vim - Vim - the ubiquitous text editor.

neovim - Vim fork focused on extensibility and usability.

kakoune - Modal editor inspired by vim.

micro - A simple and intuitive editor.

Web Development

caniuse-cmd - Search caniuse.com about browser support of feature.

is-up-cli - Check whether a website is up.

pageres-cli - Capture website screenshots.

strip-css-comments-cli - Strip comments from CSS.

viewport-list-cli - Return a list of devices and their viewports.

surge - Deploy a directory to the web.

acmetool - An automatic certificate acquisition tool for ACME (Let's Encrypt).

loadtest - Runs a load test on the selected URL. Easy to extend minimally for your own ends.

wp-cli - Manage WordPress installations, update plugins, set up multisite installs and much more.

diff2html-cli - Parse git diffs as JSON and generate pretty HTML.

HTTPie - A user-friendly HTTP client.

serve - Easy to use static file server with features like https, CORS and GZIP compression.

add-gitignore - Interactively generate a .gitignore for your project based on your needs.

Discharge - Deploy static websites to Amazon S3.

reachable - Check if a domain is up.

simplehttp - Easily serve a local directory over http.

shell2http - Execute shell commands via HTTP server.

HTTP Prompt - Interactive HTTP client featuring autocomplete and syntax highlighting.

ipfs-deploy - Deploy static websites to IPFS.

Mobile Development

mobicon-cli - Mobile app icon generator.

mobisplash-cli - Mobile app splash screen generator.

deviceframe - Put device frames around your mobile/web/progressive app screenshots.

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.

Devops

htconvert - Convert .htaccess redirects to nginx.conf redirects.

aws-cli - Universal Interface for Amazon Web Services.

azure-cli - Command-line tools for Azure.

SAWS - Supercharged AWS CLI.

s3cmd - Fully-Featured S3 client.

lstags - Synchronize Docker images across different registries.

pm2 - Production Process Manager for Node.js.

dockly - Interactively manage Docker containers.

ops - Unikernel compilation and orchestration tool.

lazydocker - Simple docker/docker-compose interface.

flog - A fake log generator for log formats such as apache-common, apache error and RFC3164 syslog.

isitfit - Manage AWS EC2 rightsizing.

docker-shell - Simple interactive docker interface.

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.

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.

Productivity

AutoScreenshotUploader - Capture and upload screenshots to imgur.

bitly-client - Bitly client.

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.

imgur-uploader-cli - Upload images to imgur.

meetup-cli - Meetup.com client.

NeoMutt - Email client.

terjira - Jira client.

ipt - Pivotal Tracker client.

g3l - Easiest git cli in the w0rld!

uber-cli - Uber client.

Buku - Browser-independent bookmark manager.

googler - Google from the terminal.

papis - Extensible document and bibliography manager.

Time Tracking

Timetrap - Simple command-line 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.

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 from your command-line.

Terminal velocity - A fast note-taking app for the terminal.

eureka - Store your ideas without leaving the terminal.

sncli - Simplenote client.

td-cli - A TODO manager to organize and manage your TODO's across multiple projects.

taskell - Interactive kanban board/task manager.

taskbook - Tasks, boards & notes for the command-line habitat.

dnote - A interactive, multi-device notebook.

Finance

ledger - Powerful, double-entry accounting system on the terminal

moeda - Foreign exchange rates and currency conversion.

cash-cli - Convert Currency Rates.

cointop - Track cryptocurrencies.

Presentations

WOPR - A simple markup language for creating rich terminal reports, presentations and infographics.

decktape - PDF exporter for HTML presentations.

mdp - A command-line based markdown presentation tool.

sent - Simple plaintext presentation tool.

Calendars

calcurse - Calendar and scheduling.

gcalcli - Google calendar client.

khal - CalDAV ready CLI and TUI calendar.

vidirsyncer - CalDAV sync.

Utilities

archive-type-cli - Detect archive type for a file or stdin.

s - Open a web search in your terminal.

aria2 - HTTP, FTP, SFTP, BitTorrent and Metalink download utility.

wego - Get the weather.

weather-cli - Check the weather.

mapscii - Terminal Map Viewer.

getnews.tech - Fetch news headlines from various news outlets.

carbon-now-cli - Generate beautiful images of your code.

pass - Password manager.

awesome-finder - Search the awesome lists without a browser.

mdv - Styled terminal markdown viewer.

shallow-backup - Git integrated backup tool.

macOS

[[open-pip-cli]] - Watch videos in picture-in-picture player.
[[app-path-cli]] - Get the path to an app.
[[bundle-id-cli]] - Get bundle identifier from a bundle name: Safari → com.apple.Safari.
[[bundle-name-cli]] - Get bundle name from a bundle identifier: com.apple.Safari → Safari.
[[lnfs-cli]] - Safely force create symlinks.
[[osx-version-cli]] - Get the macOS version.
[[osx-wifi-cli]] - Manage wifi connections.
[[active-win-cli]] - Get the title/id/etc of the active window.
[[stronghold]] - Configure security settings from the terminal.
[[website-popup-cli]] - Open a website in a popup.
[[dark-mode]] - Toggle dark mode.

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.
[[serveo]] - Expose local servers to the internet using only a SSH client.
[[seashells.io]] - Pipe output to the web.
[[teleconsole]] - Share your UNIX terminal.
[[tmate]] - Instant terminal (tmux) sharing.
[[warp]] - Secure and simple terminal sharing.
[[OverTime]] - Time-overlap tables for remote teams.

Network Utilities

[[get-port-cli]] - Get an available port.
[[is-reachable-cli]] - Check if hostnames are reachable or not.
[[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.

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.
[[pywal]] - Generate and change color-schemes, then apply them system-wide to all of your favourite programs.
[[QuickWall]] - Directly set wallpapers from Unsplash.

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

[[battery-level-cli]] - Get current battery level.
[[brightness-cli]] - Change screen brightness (windows).
[[yank]] - Yank terminal output to clipboard.
[[screensaver]] - Start the screensaver.
[[google-font-installer]] - Download and install Google Web Fonts on your local machine.
[[neofetch]] - System information tool.
[[Glances]] - System monitoring tool.

Command Line Learning

[[cmdchallenge]] - presents small shell challenge with user submitted solutions.
[[explainshell]] - type a command line snippet to see the help text for each argument.
[[howdoi]] - Instant coding answers via the command line.
[[how2]] - Finds the simplest way to do something on a unix bash command line (Nodejs 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]] - A tool to develop and improve a student’s programming skills by introducing the earliest lessons of coding.
[[navi]] - Interactive cheatsheet tool.

Data Manipulation

[[underscore-cli]] - Command-line utility-belt for hacking JSON and Javascript.
[[ramda-cli]] - A CLI tool for processing data with functional pipelines.
[[yaml-cli]] - A simple CLI for querying and updating YAML files.
[[q]] - A command line tool that allows execution of SQL-like queries on CSVs/TSVs (and any other tabular text files).
[[yq]] - Command-line YAML processor (Uses the same syntax as jq).

JSON

[[jq]] - JSON processor.
[[jp]] - Simply parse and drill into JSON on the commandline, with jsonpath and stdin stream support (jq compatible, not a replacement).
[[fx]] - Command-line JSON viewer.
[[vj]] - Makes JSON human readable.
[[strip-json-comments-cli]] - Strip comments from JSON.
[[GROQ]] – JSON processor with queries and projections.

Text

[[parse-columns-cli]] - Parse text columns, like the output of unix commands. Returns JSON that you can manipulate with tools like jq or underscore-cli.
[[figlet]] - Creates large text out of ASCII characters.

Files and Directories - File Managers

[[ranger]] - A console file manager with VI key bindings.
[[midnight-commander]] - A feature rich visual file manager.
[[organize-cli]] - Organize your files, imagine cleaning up your downloads in an instant.
[[Vifm]] - Vifm is an ncurses based file manager with vi like keybindings/modes/options/commands/configuration, which also borrows some useful ideas from mutt.
[[nnn]] - File browser and disk usage analyzer with excellent desktop integration.
[[lf]] - Fast, extensively customizable file manager.
[[fff]] - Fast, simple file manager.

Files and Directories - Deleting, Copying, and Renaming

[[trash-cli]] - Move files and directories to the trash.
[[empty-trash-cli]] - Empty the trash.
[[del-cli]] - Delete files and folders.
[[cpy-cli]] - Copies files.
[[rename-cli]] - A cross-platform tool for renaming files quickly, especially multiple files at once.

Files and Directories - Files

[[chokidar-cli]] - CLI to watch file system changes.
[[file-type-cli]] - Detect the file type of a file or stdin.
[[DocToc]] - Generates table of contents for markdown files inside local git repository. Links are compatible with anchors generated by github or other sites.
[[bat]] - A cat clone with syntax highlighting.
[[NCDu]] - A disk usage analyzer with an ncurses interface.
[[unix-permissions]] - Swiss Army knife for Unix permissions
[[rclone]] - Sync files to and from various cloud providers (Dropbox, Google Drive, Onedrive, etc.).
[[transmission-cli]] - Torrent client for your command line.
[[ffsend]] - Fully featured CLI for Firefox Send - simple and private file sharing.
[[webtorrent-cli]] – Streaming torrent client.
[[share-cli]] - Share files with your local network.

Files and Directories - Directory Listing

[[alder]] - Minimal tree with colors.
[[exa]] - Improved version of ls.
[[tre]] - tree with git awareness, editor aliasing, and more.
[[ll]] - ls with git status.

Files and Directories - Directory Navigation

[[autojump]] - A cd command that learns - easily navigate directories from the command line.
[[fasd]] - Command-line productivity booster, offers quick access to files and directories, inspired by autojump, z and v.
[[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.

Files and Directories - 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.

Version Control - Git

[[CLI GitHub]] - :tv: A fancy GitHub client for command line.
[[Gistup]] - Create a gist from terminal, then use git to update it.
[[git commander]] - A git tool with a easy terminal interface.
[[git-stats]] - :four_leaf_clover: A GitHub-like contributions calendar, but locally, with all your git commits.
[[hub]] - A command-line wrapper for git that makes you better at GitHub.
[[dev-time]] - Get the current local time of a GitHub user.
[[git-labelmaker]] - Edit GitHub labels from the command line.
[[tig]] - Text-mode interface for Git.
[[grv]] - Text-mode interface for Git with customisable vi bindings.
[[git-standup]] - Recall what you did on the last working day.
[[git-secret]] - Store your private data inside a git repository.
[[gitlab-cli]] - gitlab cli for creating merge request from the command line.
[[git-extras]] - Little git extras like git-ignore, git-setup, git-changelog, git-release, git-effort and more.
[[gita]] - Manage multiple git repos side by side for sanity.
[[readme-md-generator]] - Generate README.md files interactively.
[[semantic-git-commit-cli]] - Ensure semantic commits messages.

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 the best companion of asciinema.org.
[[givegif]] - GIFs on the command line.

Image Conversion

[[imgp]] - Blazing fast batch image resizer and rotator.
[[korkut]] - Quick and simple image processing.
[[imagemagick]] - Gold standard for anything images.

SVG

[[SVGO]] - SVG Optimizer is a Nodejs-based tool for optimizing SVG vector graphics files.

Screensavers

[[cmatrix]] - Show a scrolling 'Matrix' like screen.
[[pipes.sh]] - Shows random pipes that grow across the screen.
[[YuleLog]] - Terminal based Christmas YuleLog fireplace.
[[cli-fireplace]] - Shows digital fireplace.

Graphics

[[cli-mandelbrot]] - A cli for traversing the Mandelbrot fractal.
[[sparkly-cli]] - Generate sparklines ▁▂▃▅▂▇..
[[pastel]] - Generate, analyze, convert and manipulate colors.

Just for Fun

[[cowsay]] - A configurable talking cow (and other animals).
[[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.

Other

[[birthday]] - Know when a friend's birthday is coming.
[[detect-indent-cli]] - Detect the indentation of code.
[[fullname-cli]] - Get the fullname of the current user.
[[gzip-size-cli]] - Get the gzipped size of a file or stdin.
[[HASHA -cli]] - Hashing made simple. Get the hash of text or stdin.
[[kill-tabs]] - Kill all Chrome tabs to improve performance, decrease battery usage, and save memory.
[[leven-cli]] - Measure the difference between two strings using the Levenshtein distance algorithm.
[[mdlt]] - Do quick math right from the command line.
[[medium-cli]] - Read medium.com stories within your terminal, also gives top stories.
[[open-shortcut-cli]] - Open the URL from a web shortcut file in the browser.
[[shortcut-url-cli]] - Get the URL from a web shortcut file.
[[to-double-quotes]] - Convert matching single-quotes to double-quotes: I 'love' unicorns => I "love" unicorns.
[[to-single-quotes]] - Convert matching double-quotes to single-quotes: I "love" unicorns → I 'love' unicorns.
[[gdb-dashboard]] - Modular visual interface for GDB in Python.
[[hget]] - Render websites in plain text from your terminal.
[[google-wifi-status]] - A Node.js CLI app that displays status of your Google Wifi / OnHub router.
[[calories]] - Calories and weight tracker.
[[trino]] - Trino CLI allows a quick and easy translation of words and phrases entered in the command line.
[[alex]] - This enhances texts with checking for insensitive, inconsiderate writing by catching many possible offences.
[[xiringuito]] - A "poor man's VPN". An SSH-based "VPN" that's easy to install, but with slower performance than a real VPN.
[[nasa-cli]] - Download NASA Picture of the Day from your terminal.
[[googlr]] - Search Google from the command line.
[[Qalculate]] - Calculate non-trival math expressions. Unit conversions, symbolic calculations and more.
[[translate-shell]] - Google Translate interface.

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.

gitmoji-cli - Use emoji in commit messages.

gitmoji-changelog - Generate gitmoji changelogs.

References

https://project-awesome.org/agarrharr/awesome-cli-apps

https://github.com/herrbischoff/awesome-command-line-apps#readme

https://github.com/stevemao/awesome-git-addons#readme

https://github.com/alebcay/awesome-shell#readme

https://github.com/k4m4/terminals-are-sexy#readme

https://github.com/unixorn/awesome-zsh-plugins#readme

https://github.com/sindresorhus/awesome-nodejs#command-line-apps

MacOS - https://github.com/herrbischoff/awesome-macos-command-line#readme