Bin CLI – A simple task/script runner for any programming language
Bin CLI – A simple task/script runner for any programming language
Most projects I've worked on included a bunch of scripts for common tasks (installing dependencies, starting/stopping dev servers, testing and deploying changes, and so on). There are a few tools designed for this, such as Just ( https://just.systems/ ) and Task ( https://taskfile.dev/ ), and I know some people use Make as a task runner (e.g. https://news.ycombinator.com/item?id=40333481 ), but I've always preferred the simplicity and universality of shell scripts. Bin CLI is a tool I wrote to add some of the niceties of these tools to shell scripts: it works even when you're currently in a subdirectory, only requires you to type enough of the command (script) name to uniquely identify it, and allows aliases to be defined. It also allows a project's commands to be listed (along with some help text), supports subcommands, and supports tab completion of command names. Of course scripts can be written in other languages too, just by adding the appropriate shebang. Collaborators/contributors who don't have Bin CLI installed can just run the scripts directly - so I can enjoy the benefits without adding a hard dependency or extra barrier to entry. However, I also added support for defining one-liner scripts/aliases in a config file (much like "npm run" scripts are defined in package.json) for times when I want to avoid creating many trivial/wrapper scripts for common tasks. It is implemented as a single Bash script, with minimal dependencies, small enough to keep in my Dotfiles repo (62 KB). I also made .deb and .rpm packages so it can easily be installed system-wide.
Share cardActual performance
Launch Intel predictions
Analyze your own launch →Incorrect prediction on native model
Similar products
Shmux – script runner for almost any language
ZQDGR a Script Runner for Golang
Genesis – A language-agnostic project scaffolder and task runner
Taru – A simple local task runner
Bask: a task runner for bash
CingI, a distributed task runner
Dela, a Delegating Task Runner
Asink - A Concurrent Task Runner in Go
A simple SQL script runner in Java
I made a simple, sequential task runner (in Python)