Command Line Apps
Entertainment 1)
Development 2) - Productivity 3)
Utilities 4) - Command Line Learning
Data Manipulation 5) - Files and Directories 6) - Version Control 7)
Images 8)
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
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
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
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
Presentations
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
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
1)
Music, Social Media, Video, Movies, Games, Books
2)
Text Editors, Web Development, Mobile Development, Database, Devops, Release, Npm, Boilerplate
3)
Time Tracking, Note Taking and Lists, Finance, Presentations, Calendars
4)
macOS, Terminal Sharing Utilities, Network Utilities, Theming and Customization, Shell Utilities, System Interaction Utilities
5)
JSON, Text
6)
File Managers; Deleting, Copying, and Renaming; Files, Directory Listing, Directory Navigation, Search
7)
Git
8)
Gif Creation, Image Conversion, SVG, Screensavers, Graphics, Just for Fun, Other - Emoji
Discussion