hofmod-cli
sub
Our great sponsors
hofmod-cli | sub | |
---|---|---|
2 | 4 | |
25 | 1,733 | |
- | 0.0% | |
5.5 | 0.0 | |
8 months ago | over 2 years ago | |
Go | Shell | |
BSD 3-clause "New" or "Revised" License | MIT License |
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.
hofmod-cli
-
Bashly – Create beautiful bash scripts from simple YAML configuration
Shameless plug, I wrote https://github.com/hofstadter-io/hof as a generalized tool for what this does, i.e. generate boilerplate from a DSL.
https://github.com/hofstadter-io/hofmod-cli is the same idea for generating Go CLI boilerplate.
hof uses CUE instead of Yaml, can output to any and multiple languages, and uses diff3 so you can work in both the output and the design at the same time.
-
Writing Small CLI Programs in Common Lisp
I try to avoid pip and dependencies for these python scripts. This goal has it's limits.
Click is nice if you want a command with multiple sub commands. I use Go + Cobra at that point via https://github.com/hofstadter-io/hofmod-cli
sub
-
The Unreasonable Effectiveness of Makefiles
Scripts in bin have no documentation, no easy way to enumerate them, etc. There is definitely a time and a place for bin scripts, especially as things grow in complexity. However the beauty of just is that there's one file (the justfile) that defines all of your project's actions. You don't have to go spelunking into bin to figure out how to tweak a compiler flag, etc. And since just will run anything there's no reason why your complex bin scripts can't just be called from a simple one liner task in a justfile.
Could your write a bash script that does stuff like enumerate all the bin scripts, pull out documentation comments, etc.? Absolutely, and people have followed that pattern for a while (see https://github.com/qrush/sub) but it's a bunch of boilerplate to copy between projects. Just pulls out that logic into a simpler config file.
- Bash-Oneliner: A collection of handy Bash One-Liners and terminal tricks
- Bashly – Create beautiful bash scripts from simple YAML configuration
-
sd: my script directory
Many moons ago Basecamp published sub (github) which runs on a similar idea with different tradeoffs being chosen.
What are some alternatives?
bashly - Bash command line framework and CLI generator
janet-sh - Shorthand shell like functions for janet.
shfmt - Dockernized shfmt. This formats shell script.
harmony - Easily test downstream projects before releasing new code
tlog - Terminal I/O logger
cligen - Nim library to infer/generate command-line-interfaces / option / argument parsing; Docs at
tclmake - Partial make clone in pure Tcl
alf - Bash Alias Generator and Manager
vscode-bash-debug - Bash shell debugger extension for VSCode (based on bashdb)
ngs - Next Generation Shell (NGS)
run - Task runner that helps you easily manage and invoke small scripts and wrappers