Build and (re)start go web apps after saving/creating/deleting source files.
Go
Switch branches/tags
Nothing to show
Clone or download
Latest commit 9c00924 Mar 1, 2017
gmccue committed Mar 1, 2017 Merge pull request #67 from DoHe/optional-rebuild
Optional rebuild
Permalink
Failed to load latest commit information.
_examples initial import Jan 15, 2014
runner Add more test cases Feb 21, 2017
.gitignore initial import Jan 15, 2014
.travis.yml Remove release from travis.yml Dec 4, 2016
LICENSE initial import Jan 15, 2014
README.md Merge pull request #67 from DoHe/optional-rebuild Mar 1, 2017
main.go docs Jan 15, 2014
runner.conf.sample Reverse setting Feb 21, 2017

README.md

Fresh

Join the chat at https://gitter.im/pilu/fresh Build Status

Fresh is a command line tool that builds and (re)starts your web application everytime you save a Go or template file.

If the web framework you are using supports the Fresh runner, it will show build errors on your browser.

It currently works with Traffic, Martini and gocraft/web.

Installation

go get github.com/pilu/fresh

Usage

cd /path/to/myapp

Start fresh:

fresh

Fresh will watch for file events, and every time you create/modify/delete a file it will build and restart the application. If go build returns an error, it will log it in the tmp folder.

Traffic already has a middleware that shows the content of that file if it is present. This middleware is automatically added if you run a Traffic web app in dev mode with Fresh. Check the _examples folder if you want to use it with Martini or Gocraft Web.

fresh uses ./runner.conf for configuration by default, but you may specify an alternative config filepath using -c:

fresh -c other_runner.conf

Here is a sample config file with the default settings:

root:              .
tmp_path:          ./tmp
build_name:        runner-build
build_log:         runner-build-errors.log
valid_ext:         .go, .tpl, .tmpl, .html
no_rebuild_ext:    .tpl, .tmpl, .html
ignored:           assets, tmp
build_delay:       600
colors:            1
log_color_main:    cyan
log_color_build:   yellow
log_color_runner:  green
log_color_watcher: magenta
log_color_app:

Author

More

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request