Storyboard is a JavaScript library for managing the flow of interactive content and general application control flow logic.

When creating interactive content, managing transitions and different states of an application can become a challenge. This often results in either highly event-driven code or a spaghetti monster.

Storyboard.js is a tiny library that allows one to define scenes and then define entry and exit methods for each scenes. As the application progresses based on user actions or a predefined flow, the entry and exit functions execute in accordance with the switching of scenes.

For those familiar with state machines, Storyboard.js aims to be a lightweight state machine, in that it does not have restrictions on where one comes from or goes to.

Using deferreds, Storyboard.js provides an abstraction that makes managing asynchronous animations, remote requests and transitions easier and more readable.

Follow along for releases & announcements at @themisoproject

You can edit the code in this block and rerun it.