bash-commons
A collection of reusable Bash functions for handling common tasks such as logging, assertions, string manipulation, and more (by gruntwork-io)
events
An event/callback/promise system for bash apps that's fast (10k/s), tiny (<2.2K), and portable (bash 3.2+, builtins-only) (by bashup)
bash-commons | events | |
---|---|---|
3 | 5 | |
729 | 77 | |
1.4% | - | |
2.1 | 10.0 | |
4 days ago | about 4 years ago | |
Shell | Shell | |
Apache License 2.0 | Creative Commons Zero v1.0 Universal |
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.
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.
bash-commons
Posts with mentions or reviews of bash-commons.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-01-27.
- Bashkit V1
- BashLib a helpful source file for any script
-
How to structure library?
I think I phrased what I said poorly and unintentially communicated that I want to have all my code in one file. that' the opposite of what I'm wanting. To clarify, and I know this is splitting hairs but it illustrates my point. I think this log shell file is a good example of what I want to NOT do with my library. instead of having one file with 5 functions, I think it should be 5 files with no functions. that's to say the new file "log_info" would contain this text:
events
Posts with mentions or reviews of events.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-03-11.
-
bash-annotations: A bash framework for creating custom injection and function hook style annotations
You might find bashup.events interesting. Here's a section in a blog post where I ~explained it using an example similar to your timer. (I simplified it for the example, but I use a more complete version of this approach to calculate command duration in https://github.com/abathur/shellswain)
- Bashkit V1
-
modular bash profile scripting with shellswain
Author here. To give credit where it's due, the event system is from https://github.com/bashup/events, and it's just as useful for writing modular bash in other contexts.
- BashLib a helpful source file for any script
-
Donald Knuth Was Framed
A near non-sequitur per your aside (I agree with the rest...): https://github.com/bashup/events is one of my favorite little things. I even blogged about it in January!
What are some alternatives?
When comparing bash-commons and events you can also consider the following projects:
bashkit - Official bashkit repository
basher - A package manager for shell scripts.
shellswain - Shellswain enables simpler event-driven bash profile scripts & modules
balls - Bash on Balls
bashify - few helper functions in bash ( especially string manipulation functions )
awesome-bash - A curated list of delightful Bash scripts and resources.
bash-annotations - Java-style annotations for Bash
bash-oo-framework - Bash Infinity is a modern standard library / framework / boilerplate for Bash
ebash - enhanced bash
bash3boilerplate - Templates to write better Bash scripts