Sidekick
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' }
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
Features
- Simple and powerful DSL
- Easy to extend
- Compiles many formats, thanks to Tilt.
- Powered by EventMachine
- Very brief and concise codebase.
You can read the annotated source code.
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 with plenty of examples.
Defining new triggers
Have a look at the existing triggers, and you will get the idea. Basically, you define new triggers by writing methods that hook into EventMachine the same way as in EM.run { .. }
.
If you write some useful extensions, please ask me to merge them into the main repository.
Copyright
Copyright © 2010 Jostein Berre Eliassen. See LICENSE for details.