I would like to write an arcade game ("clone" of River Raid game) in JavaScript, using <canvas> HTML element. And I'm looking for an HTML5 game framework for this purpose.

I need:

  • loader screen
  • keyboard handling (arrow keys and space)
  • animated sprites
  • collision detection

I don't need WebGL (properly I would like to choose between WebGL render and Canvas renderer).

It will be also be nice if I could write a bot for this game (I need it for a project).

I've heard about Create.js but I don't know if it is good for my game. I have some experience with PIXI.js (without any other libraries) and tried to write a game with it but I got stucked after a few weeks.

1 Answer 1


melonJS is a fresh & lightweight HTML5 game engine, which currently has the following features:

  • A fresh & lightweight 2D sprite-based engine
  • Standalone library (does not rely on anything else, except a HTML5 capable browser)
  • Compatible with most major browser (Chrome, Safari, Firefox, Opera, IE) and mobile devices
  • Device motion & accelerometer support
  • High DPI & auto scaling
  • Multi-channel HTML5 audio support and Web Audio on supported devices
  • Lightweight physics implementation to ensure low cpu requirements
  • Polygon (SAT) based collision algorithm for accurate detection and response
  • Fast Broad-phase collision detection using spatial partitioning
  • 3rd party tools support for physic body definition (PhysicEditor, Physic Body Editor)
  • Advanced math API for Vector and Matrix
  • Tween Effects
  • Transition effects
  • A basic set of Object Entities (to be extended)
  • Object Pooling
  • Basic Particle System
  • Basic animation management
  • Standard spritesheet and Packed Textures (Texture Packer, ShoeBox) support
  • A state manager (to easily manage loading, menu, options, in-game state)
  • Tiled map format version +0.9.x integration for easy level design
  • Uncompressed Plain, Base64, CSV and JSON encoded XML tilemap loading
  • Orthogonal, Isometric and Perspective tilemap support
  • Multiple layers (multiple background/Foreground, collision and Image layers)
  • Multiple Tileset support
  • Tileset Transparency settings
  • Layers Alpha settings - Rectangle, Ellipse, Polygon and Polyline objects support
  • Tiled Objects
  • Flipped & rotated Tiles
  • Dynamic Layer and Object/Group ordering
  • Dynamic Entity loading
  • Shape based Tile collision support
  • System & bitmap fonts
  • Mouse and Touch device support (with mouse emulation)
  • Built-in support for CocoonJS
  • Asynchronous messaging support (minPubSub)
  • Basic GUI elements included
  • Customizable loader

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.