Skip to content

draganm/gorefresh

Repository files navigation

README

gorefresh - the missing go run --watch

Go Report Card GoDoc License

Are you tired of running go run every time you make a change to your Go code? Do you want to run your Go code as soon as you save it? gorefresh is a simple tool that watches your Go files and runs them whenever they change. I built this because I was tired of configuring reflex or air, especially when using embedded files. I wanted a simple tool that would just work.

🌟 Key Features

  • Automatically discovers dependencies (Go, cgo and embedded files) based on the main module directory.
  • Builds and restarts only if the dependencies have changed (see gosha).
  • Supports program arguments.

📘 Usage

gorefresh <main-module-directory> -- [ program arguments ]

📥 Installation

Install the CLI tool using go get:

go install github.com/draganm/gorefresh

Or with Nix:

nix run github:draganm/gorefresh

Future work

  • Support for build arguments
  • Restart only if the build outputs change

👥 Contributing

Contributions are welcome! Feel free to submit issues for bug reports, feature requests, or even pull requests.

📜 License

This project is licensed under the MIT License.