Awesome Cli Apps in a Csv Overview

The largest Awesome Curated list of command line programs (CLI/TUI) with source data organized into CSV files

🏠 Home · 🔥 Feed · 📮 Subscribe · ❤️ Sponsor · 😺 toolleeo/awesome-cli-apps-in-a-csv · ⭐ 2.3K · 🏷️ Development Environment

[ Daily / Weekly / Overview ]

Awesome Command Line (CLI/TUI) Programs Awesome

This repository - to the best of my knowledge - contains the largest collection of command line (CLI/TUI) tools available in the form of awesome list. With source information maintained in a handy CSV file.

To contribute, see the contribution section. Read the instructions before rushing at changing the README file: you must edit the CSV files, not the README!

Some links are available to related resources.

Summary:

Contents

AI / ChatGPT

Interfaces and front-ends to GPT engines and other tools powered by artificial intelligence and Natural Language Processing.

AI terminal command generator

Generates or explains commands for the command line using AI.

Animation

Generate or display animated graphics and effects.

Anki, decks and flashcards

Manage decks of flashcards and Anki decks.

Backup

Tools to manage the backup of files and directories.

Calculators

Calculators for mathematical operations among numbers, dates, base conversions, etc..

Chat and instant messaging

Clients for chat and other instant messaging protocols, e.g., IRC, Discord, Mattermost, Matrix, Slack, Telegram, Reddit.

Clean up of files and directories

Find/remove duplicate files, automatically organize files, etc..

Co-pilot

Programs that use GPT and GPT-like engines to generate commands at the command line or code in general from natural language.

Command launchers

Applications to launch/execute programs, either interactively, automatically, in parallel, etc..

Commands cheatsheet and snippets

Tools to manage often used commands, code snippets, and alternative manual pages.

Containerization and virtualization

Tools to manage virtual machines and/or containers and related utilities.

Conversion

File format converters.

Copy/paste and clipboard

Clipboard managers and text copy/paste tools.

Data management

Tools to manage data files.

Data management - JSON/YAML/etc.

Tools to manage data files, dedicated to JSON, YAML and other similar formats.

Data management - Tabular data

Tools to manage tabular data files, such as CSV, spreadsheets, and database tables.

Data transfer

Programs for transferring files and data between different machines.

DevOps

Applications for supporting DevOps tasks, such as containers or cloud systems management.

Diff

Calculation of diffs between files and data, even with context or semantic awareness (i.e., considering the meaning of the data).

Directory changers (alternatives to cd)

Programs for improving the efficiency of directory traversal by remembering common paths and other approaches; alternatives to the cd command.

Disk usage analyzers

Programs to analyze and summarize the usage of disks, visualize and report the size of directories and sub-directories, etc..

Editors

Text editors.

Email

Email clients (MUA - Mail User Agents), mail synchronization, generation indexing and search.

File and file system handling

Tools for managing files and directories (copy, move, extraction from compressed archives, change permissions, etc.).

File deletion and trash bin (alternatives to rm)

Tools to manage the deletion of files/directories, often with the support of a trash can, i.e., the ability to restore deleted items.

File explorer and tree visualization

Show directory trees and navigate through the file system (but not full-featured file managers).

File finding (alternatives to find)

Search the filesystem looking for files with specific characteristics, e.g., names; alternatives to find.

File listing (alternatives to ls)

List directory content and files, with colors or icons; alternatives to ls.

File manager

Applications for interactively managing files and directories.

File renamers

Utilities to rename files and directories: address multiple items with one command, interactively edit the name within an editor, etc..

File systems

File systems with specific features; e.g., the possibility to add tags and labels to files.

File watching for changes

Services that watch files for changes and perform actions when something happens.

Financial tools

Personal ledger trackers, currency converters, and tools to manage and track cryptocurrencies.

Font management

Utilities to manage system fonts and to generate text using ASCII-art-like characters.

Funny tools

Miscellaneous of tools that provide some funny/aesthetical functionality (animations, funny quotes, original message visualization, etc.).

Fuzzy finders and option pickers

Fuzzy finders and generic option pickers in lists of strings.

Games

Board games, puzzles, roguelikes, role-play, adventures, card games, etc..

Git and accessories

Tools to support and extend the functionalities of the git version tracker.

Graphics

Applications to process images, colors, and ASCII art.

History management

Programs to replace or improve the management of command line history.

Learning and didactic tools

Programs that help learning or teaching about some argument.

Markdown

Utilities to display, convert and reformat Markdown files.

Networking

Networks and communication tools: bandwidth monitoring, packet inspection, remote connection, VPNs, terminal sharing, etc..

Note taking

Tools to take, organize and manage notes.

Office tools

Programs to manage spreadsheets and to make presentations.

Online search and resources

Tools that interact with online resources to provide their services, e.g., searches, wiki, etc..

Organizers and calendars

Calendar and appointment managers.

Package managers

Package managers to manage/install/uninstall software packages, as source code or binaries.

Password managers

Programs to store and manage collections of passwords and other login/authentication information.

Pastebin

Services that allows online sharing of text and other content.

Process viewers and monitoring (alternatives to top)

Programs to list and monitor currently running processes; alternatives to the top command.

Productivity

Applications for improving own productivity that do not deserve (at the moment) a specific category; e.g., resume generators and mind maps.

Program templates and boilerplate

Utilities that generate licenses, documentation structure (README files), project directories and other boilerplate for software projects.

Programming

Tools for developers, including debuggers, testing, line counters, boilerplate and license generators, etc..

Prompts

Prompts and welcome messages at the command line.

RSS

RSS feed visualizers, converters, and managers.

Religion

Tools to handle religious material, e.g. reading the Holy Bible.

Science

Packages for scientific research and science applications, e.g., bibliography and publication management.

Screen recorder

Tools to record the content of the terminal and manage the recording (e.g., converting into animated GIFs).

Screen savers

Screen savers with animations for the idle times of the computer.

Security and encryption

Cryptography, ciphered archive managers, encrypted file-systems.

Shells

Shell programs that enable the interaction through the terminal.

Sound and music

Music players, podcast, synthesizers, downloaders, online radios.

System monitoring

Applications to display the usage of system resources: network, memory, power, etc..

System tools

System management tools, such as for brightness control, dotfile and environment variable management, notifications, etc..

Terminals

Terminal and terminal multiplexers.

Text processing

Text processing utilities to cut or sort lines, find dead links, colorize command output, etc..

Text search (alternatives to grep)

Search files and exploring directory trees to look for text or patterns (RegEx) contained in files; alternatives to the grep command.

Text search and replace (alternatives to sed)

Tools to search text within files and perform operations on it, such as text replacement; alternatives to sed.

Time trackers

Time and habit trackers to measure the amount of time spent on different activities.

Todo managers

Todo list and task managers.

Torrent

Clients and download managers using the BitTorrent protocol.

Typing test and practice

Games and utilities to measure and/or improve the typing ability.

Utilities

Miscellaneous utilities that are not do not fit in other categories and they are not numerous enough that they do not require a dedicated category.

Versioning

Tools for file versioning that are not related to git.

Video

Programs to process and manage video files (downloader, editing, players, etc.).

Viewers

File viewers for images and other formats (e.g., e-books).

Web browser

Web browsers with textual interface.

Web development

Web development tools, including load test tools, API clients and managers, link checkers and extractors, etc..

Writing

Tools to assist the writing of text and documents, including translation, spell checking, etc..

Related resources

A list of some online resources that contribute interesting links to apps and info.

Toolleeo’s CLIpedia - Blog with information on CLI apps, screenshots and other details (license, author, etc.).

The Art of Command Line - A wonderful summary from Joshua Levy regarding command line (Bash in particular) tools, programs, tips, and tricks; contains many pointers to resources and repositories, in the form of "to do this you must know that", which gives great pointers but requires further investigation from different sources; translated in many languages.

Inconsolation blog - "Adventures with lightweight and minimalist software for Linux": reviews of many command-line programs; many programs reviewed (400+, at least), with screenshots and animated GIFs; the style of presentation is ironic and funny, but requires some effort to figure out the real contribution of a program.

A little collection of cool unix terminal/console/curses tools - "Some are little-known, some are just too useful to miss, some are pure obscure..." from Kristof Kovacs; nice list with screenshot; mostly oriented to system administration; unfortunately there are no clickable links.

Caleb Xu shell awesome - Focused on UNIX shell tools.

Adam Harris awesome CLI apps - Nice list of tools; somehow too much JavaScript/Node.js-centered for my tastes.

Marcel Bischoff awesome commandd line apps - Nice up-to-date list of useful tools.

Awesome CLI by sintaxi - Relatively short list with short descriptions; with some original entries.

awesome-ttygames - Large awesome list of terminal games. The collection is maintained in a YAML format. Each item contains a description and an optional screencast.

Site Generators - A comprehensive list of Static Site Generators.

Awesome git addons - A curated list of add-ons that extend/enhance the git CLI.

Terminals Are Sexy - A curated list of Terminal frameworks, plugins & resources for CLI lovers.

Awesome Terminal Recorder - Curated list of outstanding terminal Recorder that make your day brighter! Each item is associated with an animated GIF that shows some examples of usage.

commandlinefu.com - The place to record those command-line gems that you return to again and again. That way others can gain from your CLI wisdom and you from theirs too.

cli.club - A collection of the best CLI/ncurses software covering a wide range of categories from messaging, music, text editing and more.

texteditors.org - A huge collection of links to resources on text editor. It contains references to non-CLI programs.

Terminal Trove - Collection of terminal CLI/TUI programs, with one page per program, nice screenshots and animated GIFs.

Terminal Directory - List of all (known) terminals.

Awesome TUIs - An awesome list dedicated to TUI programs.

How to contribute

If you have any suggestion or want your project to be included in the list, you can contribute in the following ways.

As a follower of the 0-inbox approach for emails, I strive to maintain a 0-length list of pull requests for new contributions.

Open an issue

To suggest a new program, check the existence of the program in the list. If it is not present, you can open an issue including the following items:

At least one of the two items homepage and git must be present.

Pull request on data/apps.csv

The peculiarity of this repository is that the source of information is structured into CSV files with a simple structure. See the data/ directory.

If you want to contribute using a pull request, add the new entry to data/apps.csv. In the CSV file, the git field refers to a clonable git URL.

Please make changes to the CSV file only, not to the README file. I will review the request and, upon acceptance, I will take care of generating the README and updating the list.

Contribution via email

If you prefer an email, contact me at toolleeo@gmail.com by sending the same information required for the "open an issue" method.

Generation of the README file

If necessary, this README file can be (re-)generated from the CSV files. To build README.md run:

make

python3 is required for building. And make, of course. :-)