Created by Lars Gersmann / orangevolt.com
Orangevolt Ampere is a technology do define programs by modeling your application as a state machine.
You can explain your application with non programmers !
* In most cases you will work with the default Ampere domain. Working with mutliple Ampere instances makes only sense in very complex applications.
*A good example for an module is an addressbook. You can develop the whole thing completely independent. It might be used as a standalone application. It can be part of another module utilising an addressbook. A module is similar to a Android Intent.
* An example: A state representing an "addressbook list" will keep the addressbook data (the model) and the logic to operate on the data. Logic means functions for create, edit or delete an addressbook entry.
* In most cases a single view is applied to a state. An example for multiple views is a default view and a separate "print" view. If no views were defined by a state, Ampere will generate a default view based on the state definition.
* The transition is probably the most powerful piece of Ampere. It takes care of the atomicity of transition actions, its reversibility and many more. A typical use case example would be transporting data (the selected address for example) from one state (the "address list") to another.
* The UI is provided as part of Ampere. You may apply additional controls to the UI. Or even a custom master layout. Master layout use case : Suppose you want to write a wizard - in this case you tell the UI to use the "wizard" master layout.
jquery.orangevolt-ampere is a full fledged Ampere implementation for
Write once, run anywhereÄhem ... Ok, almost anywhere :-)
Browser (FF/Safari/Chrome/IE10/Opera) |
Desktop application packaged with node-webkit (Win/OSX/Linux) |
Mobile app packaged with Apache Cordova / Phonegap (iOS, Android, Blackberry, Windows Phone etc) |
jquery.orangevolt-ampere is based on
jquery.orangevolt-ampere is dual licensed under MIT and GPL2 .
jquery.orangevolt-ampere is entirely free but if you'd like to support the project you can donate below. Donations will go towards hosting and domain costs.