An open API service indexing awesome lists of open source software.

awesome-cli-apps-in-a-csv

The largest Awesome Curated list of command line programs (CLI/TUI) with source data organized into CSV files
https://github.com/toolleeo/awesome-cli-apps-in-a-csv

Last synced: 5 days ago
JSON representation

  • <a name="graphics"></a>Graphics

    • jp2a - Command-line tool that converts images to ASCII art in the Linux terminal.
    • mandelbrot-cli - Multiplatform terminal mandelbrot set explorer.
    • jp2a - Command-line tool that converts images to ASCII art in the Linux terminal.
    • jp2a - Command-line tool that converts images to ASCII art in the Linux terminal.
    • kakikun - Kakikun is a tool to paint, draw and create ASCII art in your terminal using Unicode characters.
    • jp2a - Command-line tool that converts images to ASCII art in the Linux terminal.
    • figma-use - Control Figma from the command line with full read/write access for AI agents.
    • heroshot - Screenshot automation CLI for documentation. Visual element picker to define captures and config-driven regeneration with one command.
    • jp2a - Command-line tool that converts images to ASCII art in the Linux terminal.
    • asciiMOL - Curses based ASCII molecule viewer for terminals.
    • cmdpxl - Command-line image editor (edit pixels, save images, undo function, fill tool and filters).
    • Favicon Editor - Minimalist grayscale favicon editor for the terminal.
    • GiF for CLI - Convert a GIF, short video or a query into ASCII art.
    • Aewan - Aewan is a multi-layered ASCII graphics/animation editor. It produces stand-alone cat-able ASCII art files and an easy-to-parse format for integration into terminal applications.
    • heroshot - Screenshot automation CLI for documentation. Visual element picker to define captures and config-driven regeneration with one command.
  • <a name="history"></a>History management

    • atuin - Atuin replaces your existing shell history with a SQLite database, and records additional context for your commands. Additionally, it provides optional and fully encrypted synchronization of your history between machines, via an Atuin server.
    • Bevel - Command line history in an SQLite database for effective reuse.
    • hiSHtory - A better shell history that stores context (directory, succeeded or failed, how long it took, etc). The history is stored locally and end-to-end encrypted for syncing to other computers.
    • hstr - Manage the shell history. It has a powerful visual search and execution of previous commands, and history editing capabilities.
    • mcfly - Intelligent context-aware search engine for your shell history with TUI.
    • his - A command history utility with icons and colors that works on Windows and GNU/Linux.
  • <a name="launcher"></a>Command launchers

    • parallel - A shell tool from GNU for executing jobs in parallel using one or more computers, it can split the input and pipe it into commands in parallel.
    • Task - A task runner / simpler Make alternative written in Go.
    • mk - Interactive task runner for Makefile or Taskfile.yml, designed to interactively execute make commands. It provides a user-friendly interface to select and run predefined commands, making it easier to manage and execute build tasks.
    • climenu - Compact application for creating shell menus with executable entries. Use it to build straightforward static shortcut menus or dynamically generate advanced menus for more complex programs.
    • entr - Event Notify Test Runner - Run an arbitrary command when files change.
    • foy - A simple, light-weight, type-friendly and modern task runner for general purpose.
    • fzs - "Fuzzy selector for your binaries that generalizes the function of launchers like rofi and alfred/raycast using the concept of plugins to group related "actions".
    • Gaze - Runs a command, right after you save a file.
    • hypershell - Spawn shells anywhere. Fully peer-to-peer, authenticated, and end-to-end encrypted.
    • lmt - A program that can be used to run applications with resource limits enforced using cgroupsv2 on Linux; it allows setting limits on CPU usage, memory usage, and the number of cores for a process.
    • Marker - The terminal command palette.
    • menu.sh - A lightweight menu and launcher for text-mode consoles. Menus are described with YAML and sub-menus are supported.
    • mprocs - mprocs runs multiple commands in parallel and shows output of each command separately.
    • Mxflow-cli - A modern, general purpose CLI task runner with human-readable YAML config file.
    • paneru - Launcher panel from the terminal.
    • process-compose - TUI for running apps and processes.
    • procmux - A TUI utility for running multiple commands in parallel in easily switchable terminals.
    • pueue - Pueue is a command-line task management tool for sequential and parallel execution of long-running tasks.
    • rofi - A window switcher, application launcher and dmenu replacement.
    • sake - A command runner for local and remote hosts. You define servers and tasks in sake.yaml file and then run the tasks on the servers.
    • shell2http - Executing shell commands via HTTP server.
    • sunbeam - General purpose command-line launcher that defines UIs composed of a succession of views from simple scripts written in any language; a mix between an application launcher like `raycast` or `rofi` and a fuzzy-finder like `fzf` or `telescope`.
    • Sway-Talisman - Terminal application launcher in scratchpad, minimalist and native.
    • taverner - CLI launcher menu for games (or anything), the UNIX way.
    • Violet - Colorful TUI frontend to run Vagrant commands.
    • task-spooler - A Unix batch system that can be used to add the Linux commands to the queue and execute them one after the other in numerical order (ascending order, to be precise). This can be very useful when you have to run a lot of commands, but you don't want to waste time waiting for one command to finish and run the next command. You can queue it all up and Task Spooler will execute them one by one. In the mean time, you can do other activities.
    • Steam TUI - A simple TUI client for steamcmd, allows for the graphical launching, updating, and downloading of steam games through a simple terminal client.
    • mash - A customizable command launcher for storing and executing commands with a tree view of commands and filterable list tagging.
  • <a name="learning"></a>Learning and didactic tools

    • bashmate - CLI tool to learn bash command with your natural language.
    • GameShell - GameShell was devised as a tool to help university students to engage with a real shell, in a way that encourages learning while also having fun.
    • lexy - Lexy is a lightweight CLI tool that fetches programming tutorials from "Learn X in Y Minutes" directly into your terminal. Quickly search, learn, and reference code examples without leaving your workflow.
    • minicloze - Rust-based command-line language-learning game using the Tatoeba database.
    • TUI apps - A repository containing a couple of one-script programs, mainly dedicated to training/learning CLI tools such as grep, awk, etc.
    • Countryfetch - A Command-line tool similar to Neofetch for obtaining information about your country.
    • Maze TUI - Build mazes, solve them with various algorithms and visualize them.
    • Physics TUI - TUI for physics reference and calculations, providing interactive access to physics equations, definitions, and calculator organized by chapter.
    • wb - A TUI vocabulary notebook app for Linux based devices.
    • ShellKit - Unix-like educational terminal toolkit consisting of: Libc (simulation of syscall, write, printf and more) and Pysh (interactive shell).
  • <a name="ls"></a>File listing (alternatives to ls)

    • exa - Replacement for 'ls' written in Rust, with colors and several additional "views". As of today, the README says it is currently unmaintained and the only maintainer is unreachable. See `eza` for a maintained fork.
    • colorls - A Ruby script that colorizes the `ls` output with color and icons.
    • eza - eza is a modern, _maintained_ replacement for `ls`, built on `exa`.
    • Files-Sort-py - Python-based file sorter that sorts file by extensions, size, and time.
    • ll - ls with git status.
    • lscoltui - A TUI tool for changing the colours of ls.
    • lsd - This project is a rewrite of GNU ls with lots of added features like colors, icons, tree-view, more formatting options etc. The project is heavily inspired by the super colorls project.
    • nat - Complete replacement for the `ls` command.
    • pretty-ls - Rust ls clone with pretty colors.
    • stree - A CLI tool designed to visualize the directory tree structure of an S3 bucket.
    • vivid - A themeable LS_COLORS generator with a rich filetype datebase.
    • lsnotes - The program lets you add a description to your directories.
  • <a name="markdown"></a>Markdown

    • lowdown - Markdown translator (HTML5, roff, LaTeX, gemini, OpenDocument, and terminal output)
    • DocToc - Generates table of contents for Markdown files inside local git repository. Links are compatible with anchors generated by GitHub or other sites.
    • Frogmouth - A Markdown viewer / browser for the terminal.
    • glow - TUI that renders Markdown files, with keybindings similar to `less` and support for styles and cloud encrypted storing
    • Grip - GitHub Readme Instant Preview - Preview Markdown files as GitHub would render them.
    • mdBook - Create book from Markdown files.
    • mdcat - cat for Markdown
    • mdt - MarkDown in the Terminal. A Markdown viewer with themes defined by JSON files and interactive mode to open links and word-wrapping adaptable to the terminal width.
    • Terminal Markdown Viewer - Python based Markdown viewer with themes source code highlighting and a directory change monitor.
  • <a name="monitor"></a>System monitoring

    • dmidecode - System information utility.
    • dysk - A thing to get information on your mounted disks
    • inxi - A comprehensive system information script; provides information about CPU, graphics, audio and network devices, drives and partitions, sensors; implemented as a Bash script.
    • multitail - Open multiple log files in a single terminal window and monitor them in real-time.
    • pv - The pv command is used to monitor the progress of data through pipe.
    • smem - Python program that reports memory usage; it can report the "proportional set size" (PSS), a meaningful representation of the amount of memory used by libraries and applications in a virtual memory system; it has built-in chart generation.
    • The Logfile Navigator - An advanced and colorful log file viewer with TUI interface.
    • ttyload - ttyload is a lightweight utility which is intended to offer a color-coded graph of load averages over time on Linux and other Unix-like systems. It enables a graphical tracking of system load average in a terminal ("tty").
    • whowatch - Monitor Linux Users and Processes in Real Time.
    • sntop - A simple network top for monitoring connectivity.
    • act3 - Glance at the last 3 runs of your Github Actions.
    • AdGuardian-Term - A TUI dashboard for monitoring real-time traffic from an AdGuard Home instance.
    • amtui - A terminal-based user interface (TUI) application that allows you to interact with Prometheus Alertmanager using your terminal. It provides a convenient way to monitor alerts, view silences, and check the status of Alertmanager instances.
    • aserial - A serial monitor with error/warning highlighting and scrollable interface.
    • austin-tui - The top-like TUI user interface for Austin.
    • Batfetch - A command-line tool that displays detailed information about the battery of your device in a clean and organized way.
    • chdig - Dig into ClickHouse with TUI interface.
    • CoreFreq - CPU monitoring TUI software designed for the 64-bits Processors.
    • fastfetch - An actively maintained, feature-rich and performance oriented, neofetch like system information tool.
    • glances - A comprehensive and detailed system monitor; monitored parameters include: CPU, memory, load, process list, network interfaces, disk I/O, sensors, filesystems, docker, system info, uptime.
    • Grafterm - Metrics TUI dashboards on terminal, a Grafana inspired terminal version.
    • HyFetch - A fork of the abandoned [Neofetch](https://github.com/dylanaraps/neofetch), HyFetch displays information about your system next to an image, your OS logo, or any ASCII file of your choice.
    • hyperfine - A command-line benchmarking tool.
    • kaskade - TUI for kafka, which allows you to interact and consume topics from your terminal in style.
    • kmon - Linux TUI Kernel manager and activity monitor.
    • llmtop - A system monitoring tool powered by LLMs that provides real-time insights about your system's performance.
    • macchina - Fast, minimal and customizable system information frontend.
    • macmon - Sudoless performance monitoring for Apple Silicon processors, including CPU, GPU, RAM usage, power consumption and temperature.
    • neofetch - Neofetch is a CLI system information tool written in BASH. Neofetch displays information about your system next to an image, your OS logo, or any ASCII file of your choice. Currently abandoned.
    • nitchplusplus - A fast system information fetch tool.
    • noti - Monitor a process and trigger a notification.
    • otel-tui - A terminal OpenTelemetry viewer, currently supporting OpenTelemetry, Zipkin (Traces) and Prometheus (Metrics) formats.
    • plox - Extract numeric values from log files and plot them over time. Fully CLI-driven.
    • ptrstream - High-performance distributed PTR record scanner with real-time streaming output.
    • ramfetch - A fetch which displays memory info using /proc/meminfo.
    • screenFetch - It can be used to generate one of those nifty terminal theme information + ASCII distribution logos. It auto-detects the distribution and display an ASCII version of that distribution's logo and some valuable information to the right.
    • senzu - CLI tool to get the battery percentage.
    • slurm - Yet another network load monitor.
    • sysdig - A TUI for capturing system calls and events from the Linux kernel. Allows you to save, filter, and analyze the data. Like `strace` + `tcpdump` + `htop` + `iftop` + `lsof` + Wireshark for the entire system.
    • tcpterm - tcpterm is a packet visualizer in TUI.
    • tdash - A terminal dashboard with stats from Google Analytics, GitHub, Travis CI, and Jenkins. Very much built specific to the author of the tool.
    • TermUI - Cross-platform and fully-customizable TUI dashboard and widget library.
    • tinyfetch - Python and system information command-line fetch tool.
    • tmd-top - Used to monitor the process TCP traffic of the Linux system, detailed to each IP connection.
    • tmon - A tiny system monitor for Linux.
    • updo - Uptime monitoring CLI tool with alerting and advanced settings.
    • WTF - The personal information dashboard for your terminal.
    • zfxtop - Self described as “fetch top written by bubbletea enjoyer”.
    • Cloud Code Usage Monitor - Real-time Claude Code usage monitor with predictions and warnings.
    • ngrep - (Network grep) applies the `grep` logic to the network layer, allowing to match regular expressions against data payloads of packets; it recognizes IPv4/6, TCP, UDP, ICMPv4/6, IGMP and Raw across Ethernet, PPP, SLIP, FDDI, Token Ring and null interfaces.
    • Fastfetch - Like Neofetch, but much faster because written in C.
    • GFetch - A simple fetch script written in Python.
    • Bashmark - Terminal based benchmarking utility for testing CPU and GPU performance.
    • tuihub - TUI to manage todos and getting handy information on machine usage and time.
  • <a name="monitor-top"></a>Process viewers and monitoring (alternatives to top)

    • atop - Atop is TUI performance monitor for Linux; it reports the activity of all processes (even if processes have finished during the interval), daily logging of system and process activity for long-term analysis, overloaded system resources, etc.
    • iotop - "A Python program with a top like UI used to show of behalf of which process is the I/O going on".
    • nmon - Nigel's performance Monitor for Linux.
    • amdgpu-top - A tool that display AMD GPU utilization and information, gathered from performance counters (GRBM, GRBM2), sensors, fdinfo, and AMDGPU driver.
    • bashtop - Resource monitor that shows usage and stats for processor, memory, disks, network, and processes.
    • below - A time traveling resource monitor for modern Linux systems
    • bottom - Yet another cross-platform graphical process/system monitor.
    • bpytop - Linux/macOS/FreeBSD resource monitor with a nice interface.
    • Btop++ - Resource monitor that shows usage and stats for processor, memory, disks, network, and processes. C++ version and continuation of [bashtop](https://github.com/aristocratos/bashtop) and [bpytop](https://github.com/aristocratos/bpytop).
    • gotop - A terminal based graphical activity monitor inspired by gtop and vtop.
    • gputop - A simple command-line utility for querying and monitoring GPU status.
    • gtop - System monitoring dashboard for terminal written in Node.js.
    • iotop - "A Python program with a top like UI used to show of behalf of which process is the I/O going on".
    • nvitop - An interactive NVIDIA-GPU process viewer and beyond, the one-stop solution for GPU process management.
    • nvtop - A top like task monitor for AMD, Intel and NVIDIA GPUs, that can handle multiple GPUs and print information about them in a htop-familiar way.
    • PCtrl - Robust, featureful, easy-to-use and powerful process manager.
    • procs - A modern replacement for ps written in Rust.
    • radeontop - View your AMD GPU utilization, both for the total activity percent and individual blocks.
    • s-tui - Stress-Terminal UI, s-tui, monitors CPU temperature, frequency, power, and utilization in a graphical way from the terminal.
    • tegratop - TUI monitoring tool (top like) for Nvidia Jetson boards.
    • tiptop - A command-line system monitoring tool in the spirit of top, written in Python. It displays various interesting system stats and graphs them. Works on all operating systems.
    • top - The classical Unix utility that provides a rolling display of top CPU using processes.
    • ttop - top-like system monitoring tool with TUI, historical data service and triggers.
    • TTV - terminal-task-viewer: a lightweight terminal tool to manage processes in Unix machines.
    • vtop - Alternative to top with several additional stats.
    • ytop - TUI system monitor written in Rust.
    • zenith - Sort of like top or htop but with zoom-able charts, CPU, GPU, network, and disk usage
    • pproftui - TUI for Go's pprof that makes profiling interactive, intuitive, and fast.
    • vitals - System usage visualizer and top replacement for Linux.
    • pshunt - Process viewer similar to htop (view, search and kill processes and vi keybindings).
  • <a name="music"></a>Sound and music

    • Alsamixer - ALSA mixer with curses interfaces.
    • cmus - A fast and lightweight audio player with configurable keybindings and playlist support.
    • MOC - (music on console) - a powerful and easy to use console audio player, user interface a la Midnight Commander, plenty of features, fully controllable from the keyboard.
    • Mp3blaster - Audio player for the text console.
    • mpg123 - Quick `mp3` sound file player; no visual interface, just a command-line audio file player for `mp3` files.
    • ncmpcpp - NCurses Music Player Client (Plus Plus) - featureful ncurses based MPD client inspired by ncmpc. Relevant features: tag editor, playlist editor, easy to use search engine, media library, music visualizer, ability to fetch artist info from [last.fm](https://www.last.fm/), new display mode, alternative user interface, ability to browse and add files from outside of MPD music directory.
    • ogg123 - Quick `ogg` sound file player; no visual interface, just a command-line audio file player for the free and open `ogg` file format.
    • Siren - Siren is a text-based audio player for UNIX-like operating systems.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • Mp3blaster - Audio player for the text console.
    • amused - Minimal music player that composes well, or aims to do so, with other tools thought.
    • Aurras - Enhances your music experience with an intuitive TUI and seamless Spotify integration, easily navigate your music library, access playlists, and get recommendations based on your listening habits.
    • BadaBoomBooks - Quickly organize audiobooks using a terminal and web-browser.
    • bash_radio_player - Terminal Radio Player using mpv and fzf.
Categories
<a name="graphics"></a>Graphics 109 <a name="networking"></a>Networking 101 <a name="music"></a>Sound and music 101 <a name="games"></a>Games 100 <a name="git"></a>Git and accessories 80 <a name="programming"></a>Programming 77 <a name="todo-manager"></a>Todo managers 69 <a name="text-processing"></a>Text processing 58 <a name="monitor"></a>System monitoring 54 <a name="chat"></a>Chat and instant messaging 52 <a name="utility"></a>Utilities 51 <a name="viewers"></a>Viewers 51 <a name="transfer"></a>Data transfer 50 <a name="ai"></a>AI / ChatGPT 50 <a name="system"></a>System tools 49 <a name="data-management-json"></a>Data management - JSON/YAML/etc. 48 <a name="online"></a>Online search and resources 43 <a name="security"></a>Security and encryption 40 <a name="data-management-tabular"></a>Data management - Tabular data 37 <a name="animation"></a>Animation 36 <a name="editors"></a>Editors 36 <a name="webdev"></a>Web development 35 <a name="writing"></a>Writing 34 <a name="note-taking"></a>Note taking 33 <a name="cheatsheet"></a>Commands cheatsheet and snippets 33 <a name="file-handling"></a>File and file system handling 31 <a name="monitor-top"></a>Process viewers and monitoring (alternatives to top) 30 <a name="file-manager"></a>File manager 29 <a name="time-tracker"></a>Time trackers 28 <a name="shells"></a>Shells 28 <a name="launcher"></a>Command launchers 28 <a name="terminal"></a>Terminals 27 <a name="email"></a>Email 26 <a name="funny"></a>Funny tools 26 <a name="package-manager"></a>Package managers 26 <a name="financial"></a>Financial tools 25 <a name="password-manager"></a>Password managers 24 <a name="typing"></a>Typing test and practice 23 <a name="office"></a>Office tools 23 <a name="cd"></a>Directory changers (alternatives to cd) 23 <a name="browser"></a>Web browser 23 <a name="science"></a>Science 23 <a name="organizers"></a>Organizers and calendars 22 <a name="devops"></a>DevOps 22 <a name="vm"></a>Containerization and virtualization 21 <a name="calc"></a>Calculators 21 <a name="productivity"></a>Productivity 20 <a name="backup"></a>Backup 20 <a name="data-management"></a>Data management 19 <a name="option-picker"></a>Fuzzy finders and option pickers 19 <a name="conversion"></a>Conversion 18 <a name="text-search"></a>Text search (alternatives to grep) 18 <a name="file-dir-cleanup"></a>Clean up of files and directories 17 <a name="file-renamer"></a>File renamers 16 <a name="video"></a>Video 16 <a name="ai-cli-commands"></a>AI terminal command generator 16 <a name="disk-analyzer"></a>Disk usage analyzers 15 <a name="rm"></a>File deletion and trash bin (alternatives to rm) 15 <a name="prompt"></a>Prompts 13 <a name="programming-boilerplate"></a>Program templates and boilerplate 13 <a name="copilot"></a>Co-pilot 12 <a name="screen-recorder"></a>Screen recorder 12 <a name="ls"></a>File listing (alternatives to ls) 12 <a name="diff"></a>Diff 12 <a name="rss"></a>RSS 12 <a name="file-explorer"></a>File explorer and tree visualization 11 <a name="flashcard"></a>Anki, decks and flashcards 11 <a name="copy-paste"></a>Copy/paste and clipboard 11 <a name="find"></a>File finding (alternatives to find) 10 <a name="learning"></a>Learning and didactic tools 10 <a name="torrent"></a>Torrent 10 <a name="file-watch"></a>File watching for changes 9 <a name="markdown"></a>Markdown 9 <a name="versioning"></a>Versioning 8 <a name="text-search-replace"></a>Text search and replace (alternatives to sed) 8 <a name="screensaver"></a>Screen savers 7 <a name="font"></a>Font management 7 <a name="religion"></a>Religion 6 <a name="history"></a>History management 6 <a name="file-system"></a>File systems 4 <a name="pastebin"></a>Pastebin 3
Sub Categories