Created
March 6, 2009 09:43
-
-
Save kennethkalmer/74844 to your computer and use it in GitHub Desktop.
Brainstorming
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ruote-kit ramblings | |
Intro: | |
A rewrite of the existing ruote-rest project that aims to provide an easy to deploy and maintain ruote instance, accessible using a RESTful interface. Should be a breeze to use for non-Ruby projects and developers (apart from Ruby process definitions). | |
Architecture: | |
* Rack based, utilizing rack-mount | |
* Daemon-kit file system layout, keep ruote & co away from local libs, participants, configuration | |
* Easily "vendor everything" for simple deployments and maintenance | |
* Easy backups (simple rake task) | |
* Multiple storage backends, give people what they are comfortable with | |
* Fast, fast, fast | |
* Multiple environment support (development, test, production, etc) | |
* Custom resource implementations/enhancements | |
* 'public' folder for local assets that might be used by consumers | |
* Easy middleware hooks for things like complex authentication | |
Complimentary stuff | |
* Client gem for hooking into Rails (or any other Ruby project) | |
* Python client library | |
* Java client library | |
* ActiveResource friendly XML/JSON | |
Features: | |
* Completely RESTful (but without all the lingo) | |
* Visualization of processes | |
* Flexible searching (workitems, processes, etc) | |
* Open to other languages | |
* Integrated testing tools | |
* Edit process definitions on the fly | |
* Comprehensive and clear logging | |
Supporting eco-systems: | |
* Site to share process definitions | |
* Lighthouse | |
* Separate mail list? Might cause confusion with existing users (-1 currently) | |
Starting out: | |
1. $ gem install <yet-to-be-named> | |
2. $ <yet-to-be-named-generator> /path/to/project | |
3. Rejoice | |
Project layout: | |
+ bin | |
+ config | |
+ lib | |
+ participants | |
+ public | |
+ resources | |
+ script | |
+ vendor | |
+ route | |
+ gems | |
Capfile | |
Rakefile |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment