Hi LP,
No there is no documentation yet and Mimas is not ready to be used. Lubyk can be used in two ways: as a library (by doing require 'lubyk' and running a script) or as a distributed, live coding environment. The distributed execution of a "network" relies on process talking to each other by mDNS names (so we do not need a central server to run). But to "open" and "save" such a distributed thing, there has to be some kind of central place where script changes are stored: this is the "morph" server (lk.Morph class).
Currently if you launch mimas, it will ask you to join an existing zone (running network) or to start a new one. A zone is some kind of namespace in the physical network. If you start a new zone, you can indicate the ".../examples/patch/ab" folder and this will start a morph process which in turn will launch all the processes needed by the project (a process is a folder with a _patch.yml definition).
The morph server will then listen for script changes and save these in a central location.
All this is totally buggy right now (I'm changing lots of code related to "self" and C++ callbacks in Lua) but the plan for next week is to plug the WebDAV server on the lk.Morph so that you can access and edit processes through the filesystem. Eventually, clicking on a node in Mimas will mount the WebDAV share and open the file there: this is better then watching for file changes because everyone has the same content at a given time.
To summarize:
A. Next week, mimas should be fixed and allow the following operations (already implemented) :
1. Add nodes to an existing process
2. Link nodes (in a process and between processes)
3. Edit nodes (script content)
All these operations will also be exposed through WebDAV through the edition of the _patch.yml files.
B. The week after, we should have the possibility to:
1. Fork an existing process (= creates a new one)
2. View the morph server in the interface
3. Use the morph server to serve the contents of a project's "lib" folder
4. Proper application with icon and splash screen (icon already done by Nicolas Joos).
===== Deadline 5 september: Lua Workshop 2011 where I present Lubyk =====
C. Then we have to
1. Use a git library to automatically save and version a project (more work on lk.Morph).
2. "Snapshot" from the interface to save a version.
3. "Restore" (shows a list of snapshots or commit dates).
4. Discuss a security model (WebDAV/interface authentication, sandbox processes: they do not need access to the filesystem except to load lubyk code).
5. Use/write and autodoc tool to parse Lua and Doxygen xml into an SQLite database (used to generate html files with a simple web app).
6. New website (Nicolas Joos is working on it)
At this point, we will have something that can be used for real projects...
As you can see, there is still a lot of work (not counting openkinect bindings and OpenGL shaders scripting) so if you feel like hacking into this project, I would be glad to introduce you to lubyk internals.
Cheers !