Open-source projects categorized as CLI | Edit details

Top 23 CLI Open-Source Projects

  • GitHub repo httpie

    As easy as /aitch-tee-tee-pie/ 🥧 Modern, user-friendly command-line HTTP client for the API era. JSON support, colors, sessions, downloads, plugins & more. https://twitter.com/httpie

    Project mention: Pydantic for FastAPI | dev.to | 2021-05-28

    Test it out using httpie:

  • GitHub repo fzf

    :cherry_blossom: A command-line fuzzy finder

    Project mention: Ripgrep 13.0.0 Released | news.ycombinator.com | 2021-06-13

    The main thing I get out of it is super amazing fuzzy-search of my terminal history. Normally with bash's built in CTRL-R reverse history search, you pretty much have to know EXACTLY what you're searching for, and if there are a lot of similar commands between the most recently run match for a search and the one you're ACTUALLY searching for, you may have a really hard time finding it since you have to go backwards through the commands one at a time. For myself and many people, we were getting really good at typing `history | grep ''`, maybe with more pipes to grep for further refinement.

    But with fzf[1], that whole workflow of searching through your history is probably two orders of magnitude faster. Now you hit CTRL-R and you start typing any random part of the command you're trying to remember. If there was some other part of the command you remember, hit space and type that search term after the first search term. FZF will then show you the last 10-ish matches for all the search params you just typed, AND it will have done all this with no UI lag, no hitching, and lightning fast.

    I don't know what other people use FZF for, as this is the SINGLE feature that's so good I can't live without it anymore.

    [1] - https://github.com/junegunn/fzf#key-bindings-for-command-lin...

  • GitHub repo bat

    A cat(1) clone with wings.

    Project mention: Ripgrep 13.0.0 Released | news.ycombinator.com | 2021-06-13

    bat [0] (a cat replacement) and fzf [1] are the other two I would miss dearly, standing above some other "new" tools I use very regularly.

      [0]: https://github.com/sharkdp/bat

  • GitHub repo dive

    A tool for exploring each layer in a docker image

    Project mention: Keycloak on Distroless | dev.to | 2021-05-27

    If we analyse the jboss/keycloak:13.0.1 image with Dive, we can see all Keycloak related files are stored into /opt/jboss/.

  • GitHub repo cheat.sh

    the only cheat sheet you need

    Project mention: Bash turns 32 today, which is the default shell on many Linux distros. Happy cake day! Let us share this day with your favorite shell tips and tricks. | reddit.com/r/linux | 2021-06-08
  • GitHub repo ripgrep

    ripgrep recursively searches directories for a regex pattern while respecting your gitignore

    Project mention: ripgrep 13.0 released | reddit.com/r/rust | 2021-06-14


  • GitHub repo sherlock

    🔎 Hunt down social media accounts by username across social networks

    Project mention: I am studying ethical hacking skills. What do you think miz? :) (basic information gathering based on a username) | reddit.com/r/Mizkif | 2021-05-12
  • GitHub repo angular-cli

    CLI tool for Angular

    Project mention: @use and angular v12 breaks my build | reddit.com/r/Angular2 | 2021-05-19

    Issue kinda looks similar to this one https://github.com/angular/angular-cli/issues/16354

  • GitHub repo cli

    GitHub’s official command line tool

    Project mention: May: Forem Twitch Events Roundup 👾 | dev.to | 2021-06-10

    GitHub CLI Join Us For the First DEV Community Bug Smash! Christina Gorton ・ May 4 ・ 4 min read #devbugsmash #opensource #forem #contributorswanted How to Make Your First Open Source Contribution Ceora Ford ・ May 6 ・ 8 min read #opensource #beginners #coding Learn git concepts, not commands Nico Riedmann ・ Jun 2 '19 ・ 36 min read #git #tutorial #beginners

  • GitHub repo cobra

    A Commander for modern Go CLI interactions

    Project mention: I'm trying to create a CLI application using Go. After I've done go build, I can run the app using "./app repeat -2 echo go", where app is my binary, repeat is a custom command to loop and 2 is the number. Is it possible to do it wìthout the ./ in the beginning? | reddit.com/r/golang | 2021-06-07
  • GitHub repo awesome-shell

    A curated list of awesome command-line frameworks, toolkits, guides and gizmos. Inspired by awesome-php.

    Project mention: 7 Useful Github Repos For Developing Your Frontend Projects Faster 🚀 | dev.to | 2021-06-04

    Featured in: 50 Most Popular Python Projects in 2018, the top of r/Python, awesome-cli-apps, awesome-shell, terminals-are-sexy, and awesome-mac.

  • GitHub repo lazygit

    simple terminal UI for git commands

    Project mention: Don't create for an imaginary group of people | news.ycombinator.com | 2021-06-09

    AFAIK git was initially built to be a source control engine for other tools to build on top of, but most people have just used the underlying engine since it was easier. But I've really started to grok git after using a program called lazygit [0]. Basically a terminal UI on top of git where I don't have to remember the messy language of the engine, I just need to remember a couple of keystrokes.

    [0] https://github.com/jesseduffield/lazygit

  • GitHub repo Python Fire

    Python Fire is a library for automatically generating command line interfaces (CLIs) from absolutely any Python object.

    Project mention: Turn (almost) any Python command line program into a full GUI application with one line | reddit.com/r/Python | 2021-06-14

    I believe it works with click and typer as well, based on the HN comments. My main issue is that I can't get it to work with fire which would make you a powerhouse for cheap and dirty scripts (not best practice but sometimes you need something fast). I'll keep struggling but it would be amazing if I could get Gooey and fire to work together.

  • GitHub repo ava

    Node.js test runner that lets you develop with confidence 🚀

    Project mention: Deno v1.10 Released | news.ycombinator.com | 2021-05-12

    I know a fella working on a Deno port of Ava (https://github.com/avajs/ava). When that and Koa are ported or compatible, I'll be giving Deno a legitimate go.

  • GitHub repo tqdm

    A Fast, Extensible Progress Bar for Python and CLI

    Project mention: Czkawka 3.1.0 - new version of my app to find duplicates, similar images, same music, broken files etc. | reddit.com/r/DataHoarder | 2021-05-09

    The one project with a non-english title that I remember very easily despite not knowing the language is tqdm, and it's only because a) taqadum is easily pronounced in English b) it has a short and sweet acronym.

  • GitHub repo pkg

    Package your Node.js project into an executable

    Project mention: node-js app / make executable win10? | reddit.com/r/node | 2021-06-08
  • GitHub repo fd

    A simple, fast and user-friendly alternative to 'find'

    Project mention: Ripgrep 13.0.0 Released | news.ycombinator.com | 2021-06-13

    Mine are fd [0] to replace `find`, and tldr [1] to replace `man`.

    [0]: https://github.com/sharkdp/fd

    [1]: https://tldr.sh/

  • GitHub repo chalk

    🖍 Terminal string styling done right

    Project mention: Bad apple in the console | reddit.com/r/ItPlaysBadApple | 2021-05-21

    I use draftlog to update the picture, chalk to add the colors and ffmpeg to extract the video. \ The "pixels" are represented with the █ character.

  • GitHub repo Ink

    🌈 React for interactive command-line apps

    Project mention: タスク (tasuku) — The minimal task runner for Node.js | reddit.com/r/node | 2021-06-04

    Here is link number 1 - Previous text "ink"

  • GitHub repo svgo

    ⚙️ Node.js tool for optimizing SVG files

    Project mention: The smallest SVG possible | dev.to | 2021-04-15

    At this point, I'd urge you to go one step further and optimise with SVGO or manually with SVGOMG — being sure not to melt the shape with precision settings.

  • GitHub repo urfave/cli

    A simple, fast, and fun package for building command line apps in Go (by urfave)

    Project mention: High-Performance Shortlink creator in Golang | reddit.com/r/golang | 2021-05-21

    Another option would be to use something like urfave/cli to read values from environment variables and CLI flags.

  • GitHub repo .tmux

    🇫🇷 Oh my tmux! My self-contained, pretty & versatile tmux configuration made with ❤️

    Project mention: Went straight back to Pop_OS! LOVE IT! | reddit.com/r/pop_os | 2021-04-27

    tmux: I used this configuration for tmux

  • GitHub repo n8n

    Free and open fair-code licensed node based Workflow Automation Tool. Easily automate tasks across different services.

    Project mention: Automation discussion | reddit.com/r/ecommerce | 2021-06-10

    I use n8n.io for anything I can.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2021-06-14.


What are some of the best open-source CLI projects? This list will help you:

Project Stars
1 httpie 51,034
2 fzf 37,146
3 bat 27,443
4 dive 26,428
5 cheat.sh 26,010
6 ripgrep 25,834
7 sherlock 25,469
8 angular-cli 24,587
9 cli 23,680
10 cobra 21,821
11 awesome-shell 21,587
12 lazygit 20,112
13 Python Fire 19,576
14 ava 19,064
15 tqdm 18,546
16 pkg 18,295
17 fd 17,502
18 chalk 16,536
19 Ink 16,354
20 svgo 16,251
21 urfave/cli 15,924
22 .tmux 14,267
23 n8n 14,188
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives