Description
A Golang build system with file watchers and live reload. Run, build and watch file changes with custom paths
realize alternatives and similar packages
Based on the "Testing" category.
Alternatively, view realize alternatives based on common mentions on social networks and blogs.
-
Testify
A toolkit with common assertions and mocks that plays nicely with the standard library -
chromedp
A faster, simpler way to drive browsers supporting the Chrome DevTools Protocol. -
GoConvey
Go testing in the browser. Integrates with `go test`. Write behavioral tests in Go. -
gotests
Automatically generate Go test boilerplate from your source code. -
selenoid
Selenium Hub successor running browsers within containers. Scalable, immutable, self hosted Selenium-Grid on any platform with single binary. -
Testcontainers-go
Testcontainers for Go is a Go package that makes it simple to create and clean up container-based dependencies for automated integration/smoke tests. The clean, easy-to-use API enables developers to programmatically define containers that should be run as part of a test and clean up those resources when the test is done. -
hoverfly
Lightweight service virtualization/ API simulation / API mocking tool for developers and testers -
playwright-go
Playwright for Go a browser automation library to control Chromium, Firefox and WebKit with a single API. -
gnomock
Test your code without writing mocks with ephemeral Docker containers 📦 Setup popular services with just a couple lines of code ⏱️ No bash, no yaml, only code 💻 -
go-vcr
Record and replay your HTTP interactions for fast, deterministic and accurate tests -
testfixtures
Ruby on Rails like test fixtures for Go. Write tests against a real database -
counterfeiter
A tool for generating self-contained, type-safe test doubles in go -
Mmock
Mmock is an HTTP mocking application for testing and fast prototyping -
cdp
Package cdp provides type-safe bindings for the Chrome DevTools Protocol (CDP), written in the Go programming language. -
embedded-postgres
Run a real Postgres database locally on Linux, OSX or Windows as part of another Go application or test -
gotest.tools
A collection of packages to augment the go testing package and support common patterns. -
testza
Full-featured test framework for Go! Assertions, fuzzing, input testing, output capturing, and much more! 🍕 -
go-testdeep
Extremely flexible golang deep comparison, extends the go testing package, tests HTTP APIs and provides tests suite
Access the most powerful time series database as a service
Do you think we are missing an alternative of realize or a related project?
Popular Comparisons
README
#1 Golang live reload and task runner
Content
- ⭐️ Top Features
- 💃🏻 Get started
- 📄 Config sample
- 📚 Commands List
- 🛠 Support and Suggestions
- 😎 Backers and Sponsors
Top Features
- High performance Live Reload.
- Manage multiple projects at the same time.
- Watch by custom extensions and paths.
- All Go commands supported.
- Switch between different Go builds.
- Custom env variables for project.
- Execute custom commands before and after a file changes or globally.
- Export logs and errors to an external file.
- Step-by-step project initialization.
- Redesigned panel that displays build errors, console outputs and warnings.
- Any suggestion? Suggest an amazing feature! 🕺🏻
Supporters
Quickstart
go get github.com/oxequa/realize
Commands List
Run Command
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 Command
Add a project to an existing config file or create a new one.
$ realize add
💡 add supports the same parameters as start command.
Init 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 Command
Remove a project by its name
$ realize remove --name="myname"
Color reference
💙 BLUE: Outputs of the project. 💔 RED: Errors. 💜 PURPLE: Times or changed files. 💚 GREEN: Successfully completed action.
Config sample
*** 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
Support and Suggestions
💬 Chat with us Gitter ⭐️ Suggest a new Feature
Backers
Support us with a monthly donation and help us continue our activities. [Become a backer]
Sponsors
Become a sponsor and get your logo here! [Become a sponsor]
*Note that all licence references and agreements mentioned in the realize README section above
are relevant to that project's source code only.