# craftyjs/Crafty

JavaScript Game Engine

Repository: https://github.com/craftyjs/Crafty
Canonical: https://ross.abutalabs.com/products/crafty
Homepage: http://craftyjs.com
Language: JavaScript
License: MIT
License Family: permissive
Topics: javascript, games
Last push: 2023-11-04T15:36:58+00:00

## Health v2 (maintenance only)
Score: 23/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 0, release rhythm 8, longevity 100
- inputs: {"age_days": 5781, "days_push": 1033, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 3602, forks 557 (observed 2026-08-28T04:08:11.452745+00:00)

## What it is
Crafty is an open-source JavaScript/HTML5 game engine built around an entity-component-system architecture. It provides components for 2D graphics (Canvas or DOM rendering), sprites, collision detection, input, sound, and events so games run in all modern browsers without DOM manipulation or custom drawing code.

## Use cases
- build a 2D browser game in JavaScript
- create an HTML5 game without writing custom render loops
- prototype arcade games like pong or asteroids in the browser
- use an entity-component-system game framework in JavaScript
- make a cross-browser game with canvas or DOM rendering
- add sprite animation and collision detection to a web game

## When to choose
- you want a lightweight, pure-JavaScript 2D game engine that works in all major browsers
- you prefer entity-component composition over class inheritance for game objects
- you need built-in sprite maps, SAT collision detection, and input/sound components
- you want a small file-size engine installable via npm or bower

## When to avoid
- you need 3D rendering or WebGL-heavy graphics
- you want a framework with frequent releases and active development (last release was 2023)
- you need a full editor or tooling pipeline rather than a code-first library
- you are building native mobile or desktop games rather than browser games

## Facets
- artifact type: library
- maturity: maintenance
- function: game-engine, animation, image-processing, audio-processing
- domain: web-development, frontend, gaming-tools
- platform: browser, cross-platform
- tags: entity-component-system, html5-games, canvas, sprite-maps, collision-detection, 2d-games, game-development, javascript

## Member repositories
- craftyjs/Crafty (main) score 23

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:08:11.452745+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:33:44.222520+00:00, confidence not recorded.
  - readme: https://github.com/craftyjs/Crafty (fetched 2026-08-28T04:08:11.452745+00:00, sha 2d136db12102)
  - homepage: http://craftyjs.com (fetched 2026-08-29T09:27:09.532925+00:00, sha bfb416ed0ba3)
  - site_page: http://craftyjs.com/getting-started (fetched 2026-08-29T09:27:09.542153+00:00, sha 5b26a6ffd48b)
  - site_page: http://craftyjs.com/documentation (fetched 2026-08-29T09:27:09.544220+00:00, sha affd483853c8)
- Data as of 2026-08-30T08:39:29.467469+00:00.
