Go Command-line

Open-source Go projects categorized as Command-line

Top 23 Go Command-line Projects

Command-line
  1. cobra

    A Commander for modern Go CLI interactions

    Project mention: Ian Lance Taylor of the Go Team Leaves Google | news.ycombinator.com | 2025-05-10

    Very cool about the SEA feature, I haven't seen that before. Thanks for sharing that

    This is sort of the worst case comparison, but a hello world program in go is 1.5 MiB and the SEA node equivalent is 109 MiB. Obviously as your program becomes more complex that fixed overhead becomes less of an issue but I think it's still a useful comparison.

    For the packages, the thing I prefer even more so is writing an application with 0 dependencies at all. net/http, net/http/pprof, flag, pprof, etc are all built in and high quality and you can easily build clis/servers with them. Even a really full featured CLI builder package like cobra has just a few transitive deps and gorilla/mux has none: https://github.com/spf13/cobra/blob/main/go.sum https://github.com/gorilla/mux/blob/main/go.mod

    If I compare that with express.js or commander its a very different story (though, in fairness to commander, they all seem to be dev deps).

    I don't think it's bad per se to have deps, just a different culture. https://news.ycombinator.com/item?id=43935067 kinda beat that horse already though

  2. InfluxDB

    InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.

    InfluxDB logo
  3. bubbletea

    A powerful little TUI framework 🏗

    Project mention: Here's Why A Newbie is Raving About Code | dev.to | 2025-02-11

    Then, we execute the form's Run method. We won't delve into the implementation details here, but the Run method uses Charm's Bubble Tea library. Bubble Tea generates a model (the form's state) and manages that state. For more information, see the Bubble Tea Documentation

  4. micro-editor

    A modern and intuitive terminal-based text editor

    Project mention: Notepad++ is 21 years old | news.ycombinator.com | 2024-11-01

    Micro editor (https://micro-editor.github.io/) works best for me but it's terminal-based.

  5. urfave/cli

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

    Project mention: argp: GNU-style command line argument parser for Go | news.ycombinator.com | 2025-03-23

    Cobra is certainly popular, but it has many weird edge cases and limitations. It's been a while since I've used it so I can't recall the specifics, but I do remember it being a very poor experience, both as a developer and as a user of an app that uses it.

    I've had a much better experience using https://github.com/alecthomas/kong , and I've heard good things about https://github.com/urfave/cli , so I would recommend those over Cobra.

  6. fx

    Terminal JSON viewer & processor

    Project mention: Fx 36 | news.ycombinator.com | 2025-05-13
  7. dolt

    Dolt – Git for Data

    Project mention: Dolt as a backing database for blockchains | dev.to | 2025-03-24

    Before Dolt appeared on my radar, I thought this problem was non-trivial, and very difficult to implement: Whenever a fork occurs, or blocks arrive at your node that conflict with your current chain, you have to validate these new blocks against a snapshot of your data at a specific point in time. This point in time is determined by the parent block hash of the incoming blocks. This requirement for "time-travel" has always deterred me from attempting my own blockchain implementation. I know that there are blockchains out there that have (maybe?) solved this, but I'm not as good as a programmer as those guys. If you're anything like me, maybe you can relate.

  8. vhs

    Your CLI home video recorder 📼

    Project mention: DialectMorph - A CLI Tool To Transpile Code | dev.to | 2024-09-16

    VHS This tool was used to make the demo video for the CLI tool

  9. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  10. ctop

    Top-like interface for container metrics

  11. termui

    Golang terminal dashboard

  12. plandex

    Open source AI coding agent. Designed for large projects and real world tasks.

    Project mention: Void: Open-Source Cursor Alternative | news.ycombinator.com | 2025-05-08
  13. sampler

    Tool for shell commands execution, visualization and alerting. Configured with a simple YAML file.

    Project mention: Sampler, visualization for any shell command | news.ycombinator.com | 2024-07-17

    For the uninitiated like me, you have to hit the globe so it takes you to https://github.com/sqshq/sampler to find out more.

  14. Rich Interactive Widgets for Terminal UIs

    Terminal UI library with rich, interactive widgets — written in Golang

    Project mention: [DevLog #01] Gmail-TUI: Replicating The Gmail-Web Experience In Terminal | dev.to | 2024-11-02

    Gmail-TUI is a simple TUI application that aims to replicate the Gmail Web-UI in a TUI-Environment. Is this even possible? I don't even know yet but let's find out! Special thanks to Rivo for their TUI Library.

  15. Shiori

    Simple bookmark manager built with Go

    Project mention: The End Times have come for the Pinboard bookmarking service | news.ycombinator.com | 2024-09-13

    A minimalist, no-database bookmark manager suitable for quick and simple setup.

    - *[Shiori](https://github.com/go-shiori/shiori)*

  16. gocui

    Minimalist Go package aimed at creating Console User Interfaces.

  17. qrcp

    :zap: Transfer files over wifi from your computer to your mobile device by scanning a QR code without leaving the terminal.

  18. Wave Terminal

    An Open-Source, AI-Native, Terminal Built for Seamless Workflows.

    Project mention: Wave – open-source terminal file previews, editing, AI, web and workspaces | news.ycombinator.com | 2025-04-20
  19. usql

    Universal command-line interface for SQL databases

    Project mention: Why is database support in every language bad? | news.ycombinator.com | 2025-03-02

    frameworks / ORM are just specilized database graphical user interface front ends designed to simplify how data is displayed/inputed

    Database management systems usually provide a way of importing/exporting 'raw' data via sql statement(s) results. aka cvs, comma delimited, html formatted, json formatted, etc. aka do command line sql query with 'html formatted output' and open results of file in a brower.

    postgres psql provides an interactive 'cli' environment; windows sql server - sqlcmd;

    usql[1] provides something similar to psql for no-sql databases.

    sqlc is sorta the equivalent of combining the command line shell & sql queries. SQLx rust is rust extention for handling 'sql from command line, just via rust language, instead of going through command line shell.'

    ----

    [1] : https://github.com/xo/usql

  20. miller

    Miller is like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON

    Project mention: XAN: A Modern CSV-Centric Data Manipulation Toolkit for the Terminal | news.ycombinator.com | 2025-03-27

    I recently came across https://github.com/johnkerl/miller. I don't know how these tools compare.

  21. lipgloss

    Style definitions for nice terminal layouts 👄

    Project mention: State of the Terminal | news.ycombinator.com | 2024-05-16

    "\033[31;1;4munderlines\033[0m" is (again) no worse than a stream of vertices or a stream of object code. Everything is a stream of bytes (well, a stream of bits anyway). Do you want CSS? Lipgloss is not too far off [0].

    I read your objection basically as "escape sequences and control codes are noisy garbage"; are you saying something more like "the functionality you can achieve with escape sequences and control codes is fundamentally limited"? If that's the case, I don't see how, especially in the context of a character-based display.

    [0]: https://github.com/charmbracelet/lipgloss?tab=readme-ov-file...

  22. lf

    Terminal file manager

    Project mention: LF: The Blazing-Fast File Manager You Need to Check Out! | dev.to | 2025-04-15

    View the Project on GitHub

  23. kafka-go

    Kafka library in Go

    Project mention: เขียน Go ต่อ Kafka ตอนที่ 1 | dev.to | 2024-06-11
  24. color

    Color package for Go (golang)

  25. ipatool

    Command-line tool that allows searching and downloading app packages (known as ipa files) from the iOS App Store

  26. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
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).

Go Command-line discussion

Log in or Post with

Go Command-line related posts

Index

What are some of the best open-source Command-line projects in Go? This list will help you:

# Project Stars
1 cobra 40,359
2 bubbletea 31,404
3 micro-editor 26,083
4 urfave/cli 23,127
5 fx 19,372
6 dolt 18,648
7 vhs 16,342
8 ctop 16,004
9 termui 13,342
10 plandex 13,227
11 sampler 13,069
12 Rich Interactive Widgets for Terminal UIs 11,952
13 Shiori 10,318
14 gocui 10,213
15 qrcp 10,164
16 Wave Terminal 10,093
17 usql 9,360
18 miller 9,282
19 lipgloss 8,932
20 lf 8,178
21 kafka-go 7,962
22 color 7,589
23 ipatool 6,860

Sponsored
InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
www.influxdata.com