Realize is the #1 Golang Task Runner which enhance your workflow by automating the most common tasks and using the best performing Golang live reloading.
go get github.com/oxequa/realize
From project/projects root execute:
$ realize start
It will create a .realize.yaml file if doesn't already exist, add the working directory as project and run your workflow.
start command supports the following custom parameters:
--name="name" -> Run by name on existing configuration --path="realize/server" -> Custom Path (if not specified takes the working directory name) --generate -> Enable go generate --fmt -> Enable go fmt --test -> Enable go test --vet -> Enable go vet --install -> Enable go install --build -> Enable go build --run -> Enable go run --server -> Enable the web server --open -> Open web ui in default browser --no-config -> Ignore an existing config / skip the creation of a new one
Some examples:
$ realize start $ realize start --path="mypath" $ realize start --name="realize" --build $ realize start --path="realize" --run --no-config $ realize start --install --test --fmt --no-config $ realize start --path="/Users/username/go/src/github.com/oxequa/realize-examples/coin/"
If you want, you can specify additional arguments for your project:
β $ realize start --path="/print/printer" --run yourParams --yourFlags // right β $ realize start yourParams --yourFlags --path="/print/printer" --run // wrong
β οΈ The additional arguments must go after the params:
π‘ The start command can be used with a project from its working directory without make a config file (--no-config).
Add a project to an existing config file or create a new one.
$ realize add
π‘ add supports the same parameters as start command.
This command allows you to create a custom configuration step-by-step.
$ realize init
π‘ init is the only command that supports a complete customization of all supported options.
Remove a project by its name
$ realize remove --name="myname"
π BLUE: Outputs of the project.
π RED: Errors.
π PURPLE: Times or changed files.
π GREEN: Successfully completed action.
*** there is no more a .realize dir, but only a .realize.yaml file ***
For more examples check: Realize Examples
settings: legacy: force: true // force polling watcher instead fsnotifiy interval: 100ms // polling interval resources: // files names outputs: outputs.log logs: logs.log errors: errors.log server: status: false // server status open: false // open browser at start host: localhost // server host port: 5001 // server port schema: - name: coin path: coin // project path env: // env variables available at startup test: test myvar: value commands: // go commands supported vet: status: true fmt: status: true args: - -s - -w test: status: true method: gb test // support different build tools generate: status: true install: status: true build: status: false method: gb build // support differents build tool args: // additional params for the command - -race run: status: true args: // arguments to pass at the project - --myarg watcher: paths: // watched paths - / ignore_paths: // ignored paths - vendor extensions: // watched extensions - go - html scripts: - type: before command: echo before global global: true output: true - type: before command: echo before change output: true - type: after command: echo after change output: true - type: after command: echo after global global: true output: true errorOutputPattern: mypattern //custom error pattern
π¬ Chat with us Gitter
βοΈ Suggest a new Feature
Support us with a monthly donation and help us continue our activities. [Become a backer]
Become a sponsor and get your logo here! [Become a sponsor]