h1. Sidekick
"Sidekick":http://ibuildlegobricks.tumblr.com/post/1398895151/automate-common-tasks-with-sidekick is a command line tool to automatically trigger actions on certain events, as defined per project, in a local @.sidekick@ file in your project folder:
watch('**/*.rb') { restart_passenger; rake 'docs' }
auto_compile 'assets/*.sass', 'public/:name.css'
every(10) { notify sh 'fortune' }
h3. Sample use cases
- Restart server when code is changed
- Auto-compile Sass or CoffeeScript templates (and many other languages)
- Periodically run tasks
- Continuous testing, notifications, hooks, you name it
h3. Features
You can "read the annotated source code":http://jbe.github.com/sidekick/sidekick.html.
h2. Basic usage
Install with @gem install sidekick@ and invoke the @sidekick@ command in your project folder. If you do not have a @.sidekick@ file, you will be offered a "template":http://github.com/jbe/sidekick/blob/master/lib/template with plenty of examples.
h2. Defining new triggers
Have a look at the "existing triggers":http://jbe.github.com/sidekick/triggers.html, and you will get the idea. Basically, you define new triggers by writing methods that hook into "EventMachine":http://github.com/eventmachine/eventmachine the same way as in @EM.run { .. }@.
If you write some useful extensions, please ask me to merge them into the main repository.
h3. Copyright
Copyright (c) 2010 Jostein Berre Eliassen. See LICENSE for details.