Ubanita is a game development and execution platform for multi-player, single-screen 2D games.

Players use their smartphone to interact with games ; the phone is the controller. Games are displayed on a single monitor, TV, beamer or even another mobile device such as a tablet. In Ubanita, this is called the cinema.


A player uses a controller to produce inputs for the game which are triggered by touch events. You can program how these inputs are displayed on the controller and how these inputs are translated to visual outputs of the game. A controller can visualize its inputs. In addition, a controller can also display fixed graphical objects.


A cinema displays sprites of the game itself. Sprites are visual physical objects or just simple static shapes. A running game can be viewed with more than one cinema; each displaying the same game scene.


A game is programmed using standard JavaScript (ECMAScript 5.1) extended with library functions to interact with the game, cinema and controllers. It also includes underscore, a JavaScript library that provides a whole mess of useful functional programming helpers.