# piqnt/planck.js

2D JavaScript Physics Engine

Repository: https://github.com/piqnt/planck.js
Canonical: https://ross.abutalabs.com/products/planckjs
Homepage: http://piqnt.com/planck.js/
Language: TypeScript
License: MIT
License Family: permissive
Topics: game-development, javascript, physics-engine, box2d, html5, 2d, rigid-bodies, canvas, cross-platform, game-engine, gamedev, planck, planck-js
Last push: 2026-04-07T12:29:53+00:00

## Health v2 (maintenance only)
Score: 66/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 76, release rhythm 35, longevity 100
- inputs: {"age_days": 3816, "days_push": 148, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 5275, forks 255 (observed 2026-08-28T04:09:14.073559+00:00)

## What it is
Planck.js is a JavaScript/TypeScript rewrite of the Box2D 2D rigid-body physics engine, designed for cross-platform HTML5 game development. It provides an idiomatic JS/TS API for realistic rigid-body simulation, collision detection, and physics-based procedural animation in web and mobile games.

## Use cases
- simulate 2d rigid body physics in a browser game
- port box2d physics to javascript or typescript
- add realistic collision and gravity to an html5 canvas game
- build a pinball or soccer game with physics in javascript
- run a physics engine on mobile web without native code
- make objects fall and bounce realistically in a web game

## When to choose
- you want Box2D-quality 2D physics with a modern idiomatic JavaScript/TypeScript API
- you are building an HTML5 game for web and mobile browsers
- you need readable, editable physics engine source code in TypeScript
- you want a well-documented engine with many examples and an active community

## When to avoid
- you need 3D physics simulation
- you are working in C++ and can use original Box2D directly
- you need a full game engine with rendering, audio, and asset management included
- you need maximum native performance outside the browser

## Facets
- artifact type: library
- maturity: active
- function: simulation, game-engine, graphics
- domain: simulation, cross-platform, web-development
- platform: browser, cross-platform
- tags: physics-engine, box2d, rigid-body-dynamics, 2d-physics, html5-games, typescript, collision-detection, canvas, game-development, nodejs, mobile, web-server

## Member repositories
- piqnt/planck.js (main) score 66

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:09:14.073559+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-29T17:59:26.813915+00:00, confidence not recorded.
  - readme: https://github.com/piqnt/planck.js (fetched 2026-08-28T04:09:14.073559+00:00, sha 9b9c99248959)
  - homepage: http://piqnt.com/planck.js/ (fetched 2026-08-29T08:54:33.490837+00:00, sha bdb8ef9c5ab6)
  - site_page: https://piqnt.com/planck.js/docs (fetched 2026-08-29T08:54:33.504734+00:00, sha 51d8409f5986)
- Data as of 2026-08-30T08:39:29.467469+00:00.
