This is in-progress documentation for stuff that doesn't yet work, but is planned for a future release.
Everything here is subject to change, but we'll try to keep this document up-to-date if it does.
Show a list of installed applications:
$ strelka discover Searching for Strelka applications... strelka: hello-world strelka-admin: config-service strelka-admin strelka-setup strelka-cms: content-manager
Set up an application's runtime directory and add a route for it to an existing mongrel2 config database:
$ mkdir /service/cms $ cd /service/cms $ strelka -c /usr/local/etc/mongrel2.sqlite setup strelka-cms content-manager
The application can register pre- and post-install hooks that run migrations, prompt for config values, etc.
Then, to start the app:
$ cd /service/cms $ strelka --sudo start
This stuff will probably use Isolate for gem sandboxing.
The framework provides convenience methods for looking up the route to another app via its appid.
CORS (cors) — manage Cross-Origin Resource Sharing headers
caching – utilities for easy HTTP caching
Make a MacOS X tool like Pow! that makes it easy to run Strelka apps with a minimum of setup.
Planned features:
DSL plugin for handling various kinds of frames, ala the App routing plugin
DSL plugin derived from the frame-based routing plugin that adds routing logic based on a JSON data structure's contents
Automatic de-fragmenting of frames, with a plugin that allows customization of fragment-handling.
Heartbeat plugin that automatically pings connected clients, and disconnects them if they haven't been seen in a while.
Plugin class to facilitate extensions? Not sure how this would work, but it could use the 'deflate' extension as the test case.