ren (Dutch for run) runs a predefined set of commands simultaneously and has the option to trigger individual commands. it's designed to relief you from having to remember a zillion commands to type in before you can get to work.
there's only mac support for the moment, linux and windows m i g h t come in the future. kinda depends you know...
brew install thejawker/tappen/rennen
once you've downloaded the binary, you can run ren
with the following command:
ren init # to create a ren.json file
ren # to start it
ren
requires a configuration file named ren.json
in the same directory where the binary is run. this file should contain a processes
array where each object represents a process that rennen should manage. each process object should have a shortname
, command
, and description
.
here's an example of what the ren.json
file could look like:
{
"commands": [
{
"shortname": "open mailhog",
"command": "open http://localhost:8025/",
"description": "opens the mailhog page"
}
],
"processes": [
{
"shortname": "frontend",
"command": "yarn start",
"description": "starts the frontend server"
},
{
"shortname": "server",
"command": "php artisan serve",
"description": "starts the laravel server"
}
]
}
if you want to contribute to rennen or run it in a development environment, you'll need to set up your environment first. here's how you can do it:
- clone the repository:
git clone https://github.com/thejawker/rennen.git
- navigate to the project directory:
cd rennen
- install the dependencies:
go mod download
- build the project:
make build
- run the project:
make run
- check the logs since the only thing visible is the output of the commands, you can open a new terminal and run the following command:
make logs
read these things that i should do but probably won't here
it's built with the bubbletea framework, and is released using goreleaser.
well, you really don't have to
hope you enjoy less pain in your life now you can ren!
if you have any questions or run into any issues, please know that i might never respond.