awesome-cli-apps/readme.md
2021-12-31 19:00:41 +01:00

38 KiB
Raw Blame History

awesome cli apps


Awesome

A curated list of command line apps.

Inspired by the awesome list thing.

Table of Contents


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

Social Media

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.

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

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.
  • bitwise - Base conversion and bit manipulator in ncurses.
  • foy - Lightweight general purpose task runner/build tool.
  • just - Modern make-like command runner.
  • grex - Generate regular expressions from user-provided test cases.
  • gdb-dashboard - Modular visual interface for GDB.
  • iola - Socket client with REST API.

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.
  • 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

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.
  • isitfit - Manage AWS EC2 rightsizing.
  • k9s - Manage Kubernetes Clusters.
  • PingMe - Send messages/alerts to multiple messaging platforms & email.

Docker

  • lstags - Synchronize images across registries.
  • dockly - Interactively manage containers.
  • lazydocker - Simple docker/docker-compose interface.
  • docker-shell - Simple interactive docker 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.

Productivity

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.

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.
  • taskell - Interactive kanban board/task manager.
  • taskbook - Tasks, boards & notes for the command-line habitat.
  • dnote - A interactive, multi-device notebook.
  • nb - A notetaking, bookmarking, archiving, and knowledge base application.

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.
  • 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 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.
  • vdirsyncer - CalDAV sync.
  • remind - A sophisticated calendar and alarm program.

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.
  • 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

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.
  • 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.

Security

  • pass - Password manager.
  • gopass - Fully-featured password manager.
  • xiringuito - SSH-based VPN.
  • acmetool - Automatic certificate acquisition for ACME (Let's Encrypt).
  • certificate-ripper - Extract server certificates.
  • ots - Share secrets with others via a one-time URL.

Math

  • mdlt - Do quick math right from the command line.
  • Qalculate - Calculate non-trival math expressions. Unit conversions, symbolic calculations and more.

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.

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.

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.

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 influnced file manager.
  • nnn - File browser and disk usage analyzer with excellent desktop integration.
  • lf - Fast, extensively customizable file manager.
  • fff - Fast, simple 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

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.

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.
  • 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.

Version Control

  • SnowFS - A fast, scalable version control system for binaries.

Git

GitHub

Images

  • SVGO - Optimize SVG files.

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

  • cli-mandelbrot - Traverse the Mandelbrot fractal.
  • sparkly-cli - Generate sparklines ▁▂▃▅▂▇..
  • pastel - Generate, analyze, convert and manipulate colors.
  • lowcharts - Draw low-resolution graphs.

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.
  • ricksay - Quotes from Rick and Morty.

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.
  • 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.
  • to-double-quotes - Convert matching single-quotes to double-quotes.
  • to-single-quotes - Convert matching double-quotes to single-quotes.
  • hget - Render websites in plain text from your terminal.
  • alex - Catch insensitive, inconsiderate writing.
  • nasa-cli - Download NASA Picture of the Day.
  • trino - Translation of words and phrases.
  • 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.

Other Awesome Lists

License

CC0

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