cli-guidelines VS go

Compare cli-guidelines vs go and see what are their differences.

cli-guidelines

A guide to help you write better command-line programs, taking traditional UNIX principles and updating them for the modern day. (by cli-guidelines)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
cli-guidelines go
48 2,099
2,814 120,631
0.9% 0.9%
5.0 10.0
about 1 month ago 2 days ago
CSS Go
Creative Commons Attribution Share Alike 4.0 BSD 3-clause "New" or "Revised" License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

cli-guidelines

Posts with mentions or reviews of cli-guidelines. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-06.
  • Ask HN: What are some command line utilites that have great UX?
    1 project | news.ycombinator.com | 10 May 2024
    I can't think of any cli tools with great UX :( usually the important tools have lots of obtuse commands, and the small neat tools only have a couple trivial options.

    But here's some guidelines as you make your own tool: https://clig.dev/

    I always appreciate tools with examples and a good help text. Also the ability to pipe with stdin/stdout if possible.

  • Ask HN: Where to read about terminal UIs?
    1 project | news.ycombinator.com | 18 Feb 2024
  • Ask HN: Do you read Secrets from Environment Variables
    1 project | news.ycombinator.com | 6 Feb 2024
    The Command Line Interface Guidelines [1] says:

    > Do not read secrets from environment variables

    > Secrets should only be accepted via credential files, pipes, `AF_UNIX` sockets, secret management services, or another IPC mechanism

    Which one of these do you use? On github it seems common for projects to use environment variables for secrets.

    [1] https://clig.dev/#environment-variables

  • Command Line Interface Guidelines
    8 projects | news.ycombinator.com | 6 Feb 2024
    Seems they took a small step back from their previous "don't bother with man pages" stance. Now it's "Consider providing man pages."

    I still find it a rather shocking order of priority, honestly.

    https://clig.dev/#documentation

    1 project | /r/programming | 10 Nov 2023
    1 project | news.ycombinator.com | 7 Nov 2023
    1 project | news.ycombinator.com | 28 Oct 2023
    1 project | news.ycombinator.com | 19 Jul 2023
  • Ask HN: Best way to do scoped commands in a CLI app
    1 project | news.ycombinator.com | 25 Jan 2024
    - E. `blah project foo --edit`

    Wondering if there was any guidance on this from the UNIX people. Perhaps scoping should be done using the file system. `cd path/to/project && blah edit`. Like git does with `git --cwd=path/to/project`. Maybe a virtual FS could even be used. Then you wouldn't have to continuously type in the scope with each command. Interesting thinking about how to maintain state in the terminal...thinking about how Python's virtual env bin/activate modifies the shell.

    Found an interesting guide here: https://clig.dev/

  • CLI user experience case study
    12 projects | news.ycombinator.com | 12 Jan 2024
    Capturing these guidelines is one of the primary reasons that https://clig.dev/ exists.

go

Posts with mentions or reviews of go. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-06-13.
  • Criando um modulo xk6 para k6
    3 projects | dev.to | 13 Jun 2024
    Go instalado
  • Orbail proposal for go error handling
    1 project | news.ycombinator.com | 12 Jun 2024
  • Swift Static Linux SDK
    14 projects | news.ycombinator.com | 11 Jun 2024
    This melding of the sync and the async is actually kinda interesting to me. I know that at least in lots of environments, the sync and async paths are effectively separate for things like I/O[1]. I wondered (and still do for some cases) how Go handles this.

    For those curious I looked at Windows and Linux, but not much else.

    Linux: no io_uring support. There's debate on even whether to use it as people are discussing security implications[2]. It looks like (from perusing this issue, but could be wrong) AIO wasn't used.

    Windows: it looks like they're using IOCP everywhere. Seems sensible enough.

    General case: there seems to be an open issue regarding this[3].

    [1]: For example, Windows has IOCPs, Linux has io_uring, FreeBSD has kqueue, POSIX has... POSIX AIO, etc.

    [2]: https://github.com/golang/go/issues/31908

    [3]: https://github.com/golang/go/issues/6817

  • Component Generation with Figma API: Bridging the Gap Between Development and Design
    2 projects | dev.to | 10 Jun 2024
    In today's fast-paced software development landscape, efficient workflows and clear responsibilities between development and design teams are crucial. One effective way to streamline these workflows is by automating component generation from design tools like Figma to code using powerful programming languages like Golang. This article will explore the process of converting Figma components to code, focusing on the clear differentiation of responsibilities between development and design teams.
  • The Functional Programming Hiring Problem
    1 project | news.ycombinator.com | 9 Jun 2024
  • A single ChatGPT mistake cost us $10k
    8 projects | news.ycombinator.com | 9 Jun 2024
    > The Go database/sql package actually executes ROLLBACK in the SQL engine.

    No: https://github.com/golang/go/blob/beaf7f3282c2548267d3c89441...

  • Go: Sentinel errors and errors.Is() slow your code down by 3000%
    7 projects | news.ycombinator.com | 31 May 2024
    Nice write-up.

    It's a shame that errors.Is is slow for general use, and at least some of that seems attributable to the Comparable change requiring reflection. Multi-errors seems to have bloated the switch. And of course the lack of a happy-path that was fixed in [1].

    Since Go already has two ways of handling exceptional state: return or panic, it does feel like a stretch to also introduce a "not found" path too. All bets are off in tight inner loops, but I think as a general coding practice, it'll make the language (de facto) more complicated/ambiguous.

    But my take away is that the question has been kicked off: can wrapped errors be made more efficient?

    1. https://github.com/golang/go/commit/af43932c20d5b59cdffca454...

  • Fast Shadow Stacks for Go
    3 projects | news.ycombinator.com | 30 May 2024
    I know that at least two engineers from the runtime team have seen the post in the #darkarts channel of gopher slack. One of them left a fire emoji :).

    I'll probably bring it up in the by-weekly Go runtime diagnostics sync [1] next Thursday, but my guess is that they'll have the same conclusion as me: Neat trick, but not a good idea for the runtime until hardware shadow stacks become widely available and accessible.

    [1] https://github.com/golang/go/issues/57175

  • Runtime code generation and execution in Go
    8 projects | news.ycombinator.com | 29 May 2024
    I guess the meta programming that most often gets used with //go:generate ends up being text/template.

    The Go sort algorithm (pdqsort) is implemented in this way so the same algorithm can be used to implement the various existing sort APIs.

    https://github.com/golang/go/blob/master/src/sort/gen_sort_v...

  • Abusing Go's Infrastructure
    3 projects | news.ycombinator.com | 25 May 2024
    it's a known issue https://github.com/golang/go/issues/31866

What are some alternatives?

When comparing cli-guidelines and go you can also consider the following projects:

redox - Mirror of https://gitlab.redox-os.org/redox-os/redox

v - Simple, fast, safe, compiled language for developing maintainable software. Compiles itself in <1s with zero library dependencies. Supports automatic C => V translation. https://vlang.io

nodejs-cli-apps-best-practices - The largest Node.js CLI Apps best practices list ✨

TinyGo - Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM.

bubblewrap - Low-level unprivileged sandboxing tool used by Flatpak and similar projects

zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.

typer - Typer, build great CLIs. Easy to code. Based on Python type hints.

Nim - Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).

argparse-benchmarks-rs - Collected benchmarks for arg parsing crates written in Rust [Moved to: https://github.com/rosetta-rs/argparse-rosetta-rs]

Angular - Deliver web apps with confidence 🚀

picocli - Picocli is a modern framework for building powerful, user-friendly, GraalVM-enabled command line apps with ease. It supports colors, autocompletion, subcommands, and more. In 1 source file so apps can include as source & avoid adding a dependency. Written in Java, usable from Groovy, Kotlin, Scala, etc.

golang-developer-roadmap - Roadmap to becoming a Go developer in 2020

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured