# straker/kontra

A lightweight JavaScript gaming micro-library, optimized for js13kGames.

Repository: https://github.com/straker/kontra
Canonical: https://ross.abutalabs.com/products/kontra
Homepage: https://straker.github.io/kontra/
Language: JavaScript
License: MIT
License Family: permissive
Topics: javascript, game-library, js13kgames, kontra
Last push: 2026-01-30T18:51:24+00:00

## Health v2 (maintenance only)
Score: 52/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 65, release rhythm 8, longevity 100
- inputs: {"age_days": 4196, "days_push": 215, "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 1071, forks 102 (observed 2026-08-28T04:03:28.191476+00:00)

## What it is
Kontra.js is a lightweight JavaScript gaming micro-library optimized for size-constrained contexts like the js13kGames competition. It provides core game essentials such as asset loading, input handling, a game loop, sprites, object pools, and quadtrees while staying small, modular, and memory efficient.

## Use cases
- build a small html5 game for a game jam
- make a canvas game under 13kb
- prototype a 2d game quickly in javascript
- load assets and handle input in a browser game
- run a fixed game loop with sprites
- use object pools and quadtrees for memory-efficient games

## When to choose
- you need a tiny, size-optimized game library for js13kGames or similar size-limited jams
- you want a minimal foundation to extend rather than a full engine
- you are prototyping and want to get running quickly
- you want to combine it with other libraries

## When to avoid
- you need a full-featured engine with physics, scenes, and editors like Phaser
- you are building a large commercial game needing extensive tooling
- you need 3D rendering
- you want batteries-included features out of the box

## Facets
- artifact type: library
- maturity: active
- function: game-engine, animation, image-processing
- domain: web-development, frontend
- platform: browser
- tags: micro-library, js13kgames, game-jam, html5-games, sprites, game-loop, canvas, lightweight, es-modules, object-pool, quadtree, game-development, javascript, web

## Member repositories
- straker/kontra (main) score 52

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:03:28.191476+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-30T06:53:52.770221+00:00, confidence not recorded.
  - readme: https://github.com/straker/kontra (fetched 2026-08-28T04:03:28.191476+00:00, sha 0d2f353d60b8)
  - homepage: https://straker.github.io/kontra/ (fetched 2026-08-29T12:55:59.386582+00:00, sha 8c4f57b7b2c7)
  - registry_npm: https://registry.npmjs.org/kontra (fetched 2026-08-29T12:55:59.389285+00:00, sha bf5157d3c7e7)
- Data as of 2026-08-30T08:39:29.467469+00:00.
