Flambe is an engine and asset pipeline for cross-platform multiplayer games.
Written in Haxe, games are compiled to Flash and HTML5, with support for mobile devices. Server-side logic compiles to JS and runs on Node.js, for games that require multiplayer.
Rendering in Flash uses Stage3D, falling back to copyPixels if hardware accelerated Stage3D isn't available. The HTML5 renderer uses canvas, with plans for WebGL support later on.
Demos and more are on the Flambe wiki.
Flambe's design and roadmap are guided by a few philosophies:
Composition over inheritance: Flambe uses an entity/component system rather than sprawling inheritance hierarchies. The composition pattern also comes up repeatedly in other parts of Flambe's design.
Convention over configuration: Project layouts and APIs should have sensible defaults. Manual configuration for unusual use cases should be possible, but not required.
HTML5 and mobile web support is a high priority.
Flambe is a "clean break" from the Flash API which most Haxe game engines are based on. The Flash API and its many quirks are a huge amount of work to reliably port to other platforms (ask the NME guys) and wasn't designed to run well on GPUs (ask the Starling guys). By writing against a smaller, well-defined API designed for games, Flambe games can be much more portable, optimized, and developed more rapidly.
See the install guide on the wiki.
To build and develop Flambe from source, clone this repository and run
haxelib dev flambe /path/to/flambe/src to use it. Patches and pull
requests are welcome!