Fresh, modern & lightweight
melonJS is an open source HTML5 game engine that empowers developers and designers to focus on content.
The framework provides a comprehensive collection of components and support for a number of third-party tools. Giving you a powerful combination that can be used wholesale or piecemeal.
Built with modern technology.
Released under the permissive MIT License.
Your scene graph is a hierarchy of containers.
Updates and drawing operations are dispatched separately.
Draws are opt-in; add compute-only renderable for AI, special effects, etc.
Powerful Level Design
melonJS integrates the popular Tiled map format, allowing designers easily create levels using the Tiled map editor, and to focus on the game features itself.
- A fresh and lightweight 2D sprite-based engine
- Standalone library (no additional dependencies)
- Fast WebGL 1 & 2 renderer for desktop and mobile devices with fallback to Canvas rendering
- Web Audio support with fallback to Multi-channel HTML5 audio
- High DPI resolution & advanced auto scaling options
- Sprite with 9-slice scaling option, animation management, and built-in effects (tinting, masking)
- Tween & Transition effects
- System and Bitmap fonts
- A state manager and customizable loader
- Mouse, Touch, Pointer, and Gamepad device support
- Device motion, orientation, and accelerometer support
Lightweight 2D "arcade" physic implementation
- Polygon (SAT) based collision algorithm for accurate detection and response
- Fast Broad-phase collision detection using spatial partitioning
- Collision filtering for optimized automatic collision detection
Tiled map format integration for easy level design:
- Orthogonal, Isometric, Hexagonal, and Perspective tilemap built-in support
- Multiple and Dynamic tiles and objects layers support including parallax scrolling
- Animated Tiles, rotated tiles, transparency, tiled Objects and more...
- export to JSON and XML formats
- As light as less than 100kb minified & gzipped
melonJS provides native integration and support for the following 3rd party tools :