A dead-simple automation tool. Inspired by Makefile and Justfile.
Tip
Looking for a Dockerfile/docker-compose.yml generator? gorvus is waiting for you!
- Fancy interface: good experience, clear instructions and colored texts are what you get.
- Lightning speed: written in Rust, when you run it, it looks like a rocket.
- Easy configuration: unlike other command runners, Ruke uses TOML so you don't need to learn a new language.
Pre-requisites: Rust and Cargo.
Using Cargo, run:
cargo install ruke
First things first, define your tasks in a Ruke.toml
.
Recommendation: place it in the root of your project.
[[tasks]]
name = "main"
command = "pnpm start"
arguments = ["--port 3333"]
Now, to run the main
task
ruke
Yeah, it's that simple!
Here's two tables that show existing arguments, flags and their default value.
Argument | Default |
---|---|
target | main |
Flag | Default |
---|---|
-f --file |
Ruke.toml |
-q --quiet |
false |
Root Ruke.toml
and default target (named main)
ruke
Root Ruke.toml
and non-default target
ruke target
Non-root Ruke.toml
, silent and non-default target
ruke target --file path/to/Ruke.toml --quiet
As long as you write a valid TOML, you can name the file whatever you want. That being said, I suggest you to use one of these two names: Ruke.toml
or Rukefile
.
Look at the full spec of TOML v1.0.0.
[[tasks]] # defines a task
name = "main" # defines an unique name to the task
command = "go run cmd/main.go" # defines a command to be executed
[[tasks]] # defines other task
name = "dev"
command = "pnpm dev"
arguments = ["--watch"] # specifies arguments to the command
[[tasks]] # another one
name = "build"
command = "go build -o gorvus cmd/main.go"
Feel free to contribute, create an issue to report a bug, suggest an API change, an improvement or a feature.
- Fork this repository
- Clone your fork on your machine
- Make your changes, commit and push these
- Open a pull request (write a descriptive message about what you changed)
This project is licensed under the MIT License - See the LICENSE for more information.
Made with ❤ and 🦀 by Kauê Fraga Rodrigues.