Skip to content
Guard-Rails is watching on your development servers as you wish!
Branch: master
Clone or download
Pull request Compare This branch is 241 commits ahead, 30 commits behind johnbintz:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Guard-rails is watching on your railses!

Gem Version Build Status Dependency Status Code Climate Test Coverage

Main repository

Currently, the official fork repository is at ranmocy/guard-rails. Please, come here and communicate with me.


Please make sure to have Guard installed before continuing.

Add Guard::Rails to your Gemfile:

group :development do
  gem 'guard-rails', require: false

Add the default Guard::Rails template to your Guardfile by running:

$ guard init rails

Add options in Guardfile

guard :rails, port: 3000, host: '' do

Now I can automatically restart your Rails development server as your files change!

Lots of fun options growing!

  • :daemon runs the server as a daemon, without any output to the terminal that started guard (default false)
  • :debugger enable the debugger in server. Requires ruby-debug gem. (default false)
  • :environment is the server environment (default development)
  • :force_run kills any process that's holding the listen port before attempting to (re)start Rails (default false)
  • :pid_file specify your pid_file (default tmp/pids/[RAILS_ENV].pid)
  • :host is where the server is hosted (default localhost)
  • :port is the server port number (default 3000)
  • :root lets you specify the Rails root, i.e. for using guard-rails to run a dummy app within an engine (try :root => '/spec/dummy').
  • :server the webserver engine to use (try :server => :thin)
  • :start_on_start will start the server when starting Guard (default true)
  • :timeout waits when restarting the Rails server, in seconds (default 30).
  • :zeus_plan the custom plan in zeus, only works when zeus option is true (default server)
  • :zeus support zeus to boost rails init speed (default false).
  • :CLI construct the runner command as you will! Will omit all options above except pid_file! (default rails server --pid tmp/pids/[RAILS_ENV].pid)


  • Multiple instances use pid_file option to run multiple instances with same rails_env.
  • Avoid multiple autoruns when editing by VIM and Emacs move the backup files to somewhere else or just ignore them in Guardfile.
  • Use binding.pry in Rails Actually you can't! See discussion here.


  • All Platforms MRI is the main test case. But will be tested under REE and JRuby.
  • Live on the edge Guard-Rails will be tested under Ruby 2.2.3 to 2.3.0 with newest gems.
  • Semantic Version


The best way to contact me is the Issues and Pull Request system on GitHub. Currently the official fork repository is at ranmocy/guard-rails.

Please, post your issues or pull requests there. And I will be there as your call.


  • Ranmocy Sheng
  • John Bintz
  • cablegram
  • Joel Moss
  • Sidney Burks
  • Paul Schyska
  • Adam Michel
  • Adib Saad
  • Cezary Baginski
  • Nathan Broadbent
  • Tim Preston
  • killphi
  • Michael
  • Benjamin Sullivan
  • Johnny Robeson
  • Peter Ragone
  • Grant Hutchins and Jonathan Mukai-Heidt
  • Everard Brown
  • Sho Kusano
  • Darrin Holst
  • Leo Lou
  • Luciano Sousa
  • Michel Pavan Macedo


Guard-rails is under MIT license.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.