Skip to content
Cezary Baginski edited this page Jul 10, 2015 · 21 revisions

NOTE: Guard mantainers are not responsible for the quality or suitability of the plugins below. (Though, some plugins are maintained by Guard core developers.)

(Order: by area: popularity among beginners or ideally by star count - please update if needed)

NOTE: some plugin authors work on their own forks instead of the forks in the Guard organization. Please update the links below if they point to the wrong/outdated fork.

Popular / Featured / Well supported

Plugin When to use
guard-bundler installs/updates gems when Gemfile changes
guard-rspec Smart/incremental RSpec runner
guard-minitest runs Minitest and Test/Unit tests
guard-cucumber Reruns changed/affected Cucumber Features
guard-zeus Zeus speeds up startup time for Rails commands (development, server, testing)
guard-jasmine Frontend testing using PhantomJS/Webkit
guard-cucumber Reruns changed/affected Cucumber Features
guard-jekyll-plus Extensive plugin for working with Jekyll projects
guard-brakeman Scans your Rails application for known security holes (CVE's)
guard-rubocop Check your source files to style violations and potential problems
guard-puppet Helps build Puppet catalogs for deploying and managing sites and servers
guard-shell Runs shell commands when changes happen - also supports notifications and long -running programs
guard-livereload Reloads browser whenever web pages change
guard-minitest runs Minitest and Test/Unit tests
guard-nanoc rebuild Nanoc websites
guard-process Manages background processes (servers, daemons)
guard-yield runs any Ruby code (without the need to write a Guard plugin)

Rails related

Plugin When to use
guard-brakeman Scans your Rails application for known security holes (CVE's)
guard-migrate Migrates the database whenever you add/change migrations
guard-jammit Compressing assets (JS, CSS)
guard-annotate Inserts "cheatsheets" about your database schema into your source files
guard-passenger Manages the Passenger server (restarts when necessary)
guard-sprockets Recompiles assets using Sprockets
guard-rails_best_practices check if code matches Rails Best Practices

Website generating

Plugin When to use
guard-jekyll-plus Extensive plugin for working with Jekyll projects
guard-middleman Rebuilds Middleman static websites
guard-nanoc rebuild Nanoc websites

General Web Development & Design

Plugin When to use
guard-livereload Reloads browser whenever web pages change
guard-coffeescript Compiles CoffeeScript files
guard-compass Rebuilds your CSS files in Compass Sass projects
guard-sass Recompiles Sass files to CSS
guard-steering Speed up Handlebar.js templates by precompiling them
guard-pusher Send messages to multiple iPad/iPhone browsers (like "reload page")
guard-shopify automatically upload and update Shopify templates when they change
guard-slim regenerate slim templates
guard-premailer inline CSS in email templates
guard-uglify compress JavaScript files using uglifier gem
guard-haml compile Haml templates to HTML
guard-less compile LESS templates
guard-sprite-factory Web Development

Restarting servers/daemons/workers

Plugin When to use
guard-process Manages background processes (servers, daemons)
guard-redis restarts Redis server when needed
guard-go Run and restart go programs and servers when changed
guard-resque restarts Resque workers
guard-delayed automatically restarts delayed_job workers
guard-webrick Restarts WEBrick server when needed

Testing

Plugin When to use
guard-cucumber Reruns changed/affected Cucumber Features
guard-rspec Smart/incremental RSpec runner
guard-minitest runs Minitest and Test/Unit tests
guard-jasmine Frontend testing using PhantomJS/Webkit
guard-teaspoon Web testing with PhantomJS or Selenium WebDriver
guard-prove reruns Perl tests
guard-motion reruns specs for RubyMotion (iOS, Android, OSX Ruby apps)
guard-phpunit Guard::PHPUnit automatically runs your tests
guard-frank rerun Frank-Cucumber (iOS) features
guard-calabash-ios return Calabash iOS Cucumber features
guard-jasmine-headless-webkit rerun Jasmine tests in a headless WebKit instance
guard-jasmine-node reruns Jasmine Node.js tests
guard-jenkins sets a Jenkins status image depending whether there's a failure or not

Code Quality

Plugin When to use
guard-cane fails the build if your source files fail the quality level
guard-rubocop Check your source files to style violations and potential problems
guard-jshint-node detect errors and potential problems in JavaScript files

Documentation

Plugin When to use
guard-hologram generates beautiful style guides for CSS
guard-docbook-status update docbook document overviews (structure stats)
guard-readme-on-github preview GitHub pages locally before pushing them to GH
guard-rocco regenerates Rocco docs
guard-gimli convert markup files (markdown, rdoc) into PDF files
guard-git-scribe rebuild git-scribe ebooks
guard-markdown convert Markdown files to HTML
guard-ronn compile man pages

DevOps

Plugin When to use
guard-s3 Synchronize folders with Amazon S3 buckets
guard-puppet Helps build Puppet catalogs for deploying and managing sites and servers
guard-chef watches and reloads Chef recipes automatically
guard-flopbox synchronize directories via SFTP

Utility

Plugin When to use
guard-ctags-bundler regenerates CTags files so editors can find method definitions
guard-shell Runs shell commands when changes happen - also supports notifications and long -running programs
guard-yield runs any Ruby code (without the need to write a Guard plugin)
guard-rake reruns a rake task when files change
guard-rsync automatically sync directories with RSync whenever they change
guard-post automatically load text files into database records (Mongoid, ActiveRecord, etc.)
guard-lilypond Engraving music scores
guard-zen Runs Ruby Koans

Guard Plugin development

Plugin When to use
guard-compat Essential for developing and testing Guard Plugins
guard-yield runs any Ruby code (without the need to write a Guard plugin)

Not yet categorized/described

NOTE: I (@e2) haven't gone through these - please move these into the above categories if any are usable/useful enough:

Plugin When to use
guard-addremove ?
[guard-asciidoctor]: ?
guard-autoupload ?
[guard-bacon]: ?
guard-bdd ?
guard-blink1 ?
guard-blogger ?
guard-bosh ?
[guard-bower]: ?
guard-bower_rails ?
guard-bundler-audit ?
guard-catalog ?
guard-cedar ?
uard-clockwork ?
[guard-cloudformation]: ?
guard-cocoapods ?
guard-codeception ?
guard-coffeelint ?
guard-cogs ?
guard-combustion ?
guard-concat ?
guard-concatfilter ?
guard-consistency_fail ?
guard-cop: ?
guard-copy ?
guard-copy2 ?
guard-copy3 ?
guard-ctags-composer ?
[guard-cucumber-js]: ?
guard-cunit ?
guard-depend ?
guard-ecukes ?
[guard-ejs]: ?
guard-elixir ?
guard-embertools ?
guard-entangle ?
guard-erb ?
guard-erlang ?
guard-evergreen ?
guard-fast_spec ?
guard-faye ?
guard-fig ?
[guard-fixture_builder]: ?
[guard-flay]: ?
guard-flog ?
guard-flow ?
guard-foodcritic ?
guard-foreman ?
guard-gitpusher ?
[guard-go]: ?
guard-goliath ?
guard-gotest ?
guard-gradle ?
guard-gradle-android-test ?
guard-grunt ?
guard-gulp ?
guard-haml-coffee ?
[guard-haml-ext]: ?
[guard-haml2erb]: ?
guard-handlebars ?
guard-haskell ?
guard-helpers ?
guard-herbalizer ?
guard-hogan ?
guard-i18n-js ?
[guard-i18next]: ?
guard-image_optim ?
guard-imageoptim ?
guard-inch ?
guard-jade ?
[guard-jasmine-rails]: ?
guard-jaspec ?
guard-java ?
guard-jenkins ?
guard-jessie ?
guard-jet ?
[guard-jetty]: ?
guard-jruby-minitest ?
guard-jruby-rspec ?
[guard-js-static-require]: ?
guard-jshint-on-rails ?
[guard-jshintrb]: ?
guard-jslint ?
[guard-jslint-on-rails]: ?
[guard-jslint-on-rails-for-1.1.1]: ?
[guard-jst]: ?
guard-jstd ?
guard-julia ?
guard-karma ?
guard-kitchen ?
guard-kjell ?
guard-knife ?
[guard-koans]: ?
guard-konacha ?
guard-konacha-rails ?
guard-konacha-version ?
guard-lessc ?
guard-librarian ?
guard-live-set ?
guard-llsprockets ?
[guard-lono]: ?
guard-markdown ?
guard-markdown2impress ?
guard-maven ?
guard-minitest-decisiv ?
guard-mirror ?
guard-mocha-node ?
guard-mouch ?
guard-mthaml ?
guard-mustachejs ?
guard-mutant ?
guard-notifier-blink1 ?
[guard-notifier-git_auto_commit]: ?
guard-notifier-gntp_only-darwin ?
guard-npm ?
guard-ocunit ?
[guard-opal-rails]: ?
guard-openscad ?
guard-parallel_all ?
guard-pdflatex ?
guard-phantomjs-jasmine ?
guard-phpcs ?
guard-phpmd ?
guard-phpspec ?
[guard-phpunit2]: ?
guard-play ?
guard-pow ?
guard-predictionio ?
[guard-preek]: ?
[guard-preserves]: ?
guard-processing ?
[guard-prostores]: ?
guard-puma ?
guard-puppet-lint ?
guard-pushover ?
guard-pytest ?
[guard-python-unittest]: ?
guard-rack ?
guard-rackunit ?
[guard-rackup]: ?
guard-ragel ?
guard-rails ?
guard-rails_best_practices ?
guard-railsbp ?
guard-railstestdb ?
guard-rake-vagrant ?
guard-rdoc ?
guard-rebar ?
guard-redcarpet ?
guard-reek ?
guard-reloader ?
guard-remote-sync ?
guard-resque-scheduler ?
guard-restarter ?
[guard-rna]: ?
guard-roxy ?
guard-rrails ?
guard-rspec-jruby ?
guard-rubby ?
[guard-ruby]: ?
guard-rubybeautify ?
guard-rubycritic ?
[guard-rust]: ?
guard-schema ?
guard-schema ?
guard-sculpin ?
guard-seeds ?
[guard-shellexec]: ?
guard-shopify ?
guard-shopifytheme ?
guard-shoryuken ?
guard-shotgun ?
guard-sidekiq ?
[guard-simple_shell]: ?
guard-spin ?
guard-spinach ?
guard-spinoff ?
guard-spork ?
guard-sporkminitest ?
guard-spring ?
guard-sprite-factory ?
guard-sprockets2 ?
guard-staticmatic ?
guard-steering ?
[guard-stitch]: ?
guard-stitch-plus ?
guard-strainer ?
guard-stylus ?
guard-sublime-ctags ?
guard-sunspot ?
[guard-sync]: ?
guard-tap ?
guard-tay ?
guard-teabag ?
[guard-templates]: ?
guard-templates-jshaml ?
guard-test ?
guard-tilt ?
guard-tishadow ?
guard-titan ?
guard-toc ?
guard-treetop ?
guard-typescript ?
guard-unicorn ?
guard-unity ?
guard-vows ?
guard-webhook-notifier ?
guard-webpack ?
guard-xcode ?
guard-xcoder ?
guard-xctool-test ?
guard-yaml ?
guard-yamlsort ?
guard-yard ?
[guard-yardstick]: ?
guard-yeti ?
guard-zeus-client ?
[guard-zeus_server]: ?

NOTE: if any above plugins are broken or outdated, try the following:

  1. find the gem on rubygems.org, then go to the homepage
  2. file an issue there and wait up to a few days for the author to respond
  3. if the plugin author isn't responding CC a Guard maintainer in the issue (e.g. me: @e2)

Outdated/Obsolete plugins

Outdated Plugin Why outdated/obsolete
Rails-Autotester probably replaced with Guard::Minitest
guard-autorefresh superseeded by Guard::LiveReload
guard-coffeedripper probably outdated
guard-db probably replaced with guard-migrate
guard-ego Guard can now reload itself
guard-focus probably can be replaces with Guard::RSpec with custom config
guard-hydra probably replaced with Guard::RSpec using parallel specs (check Guard::RSpec Readme)
guard-jekyll superseeded by guard-jekyll-plus
guard-jessie likely superseeded by guard-jasmine
guard-jslint-on-rails probably outdated
guard-jstd probably superseeded by other JavaScript testing Guard plugins
guard-krl updates cloud-based Kinetic Rules Engine rule files (company dissolved)
guard-mozrepl probably superseeded by Guard::LiveReload
guard-phantomjs probably superseeded by other JavaScript testing Guard plugins
guard-rails-assets not sure if it works with Rails 4
guard-rspectacle Embedded RSpec runner - probably better to use Guard::Rspec or Guard::Zeus
guard-soca likely outdated
guard-spring guard-rspec supports running RSpec with Spring and a lot more
guard-sprockets2 probably outdated
guard-stendhal likely outdated
guard-stitch alternative to guard-sprockets, but may be outdated
[guard-jekyll2] probably replaced with guard-jekyll-plus

Clone this wiki locally