Skip to content
@debuffjp

Debuff

Best-in-class, open tools for games and creative work on the web.

debuff: open tools for small, polished 2D web games

Best-in-class, open tools for games and creative work on the web.

Each tool does one job well and works on its own with whatever you already use.
Together they make one fast, open foundation, so you spend your time on the idea, not the plumbing.

debuff.jp why debuff play the examples try it Discord

debuff

debuff is our framework for small, polished 2D games that run in the browser: less setup, more time for mechanics, art and weird ideas.

npm create debuff@latest my-game
  • A small, fast runtime. Rendering is spryte, which draws moving sprites 2–4× faster than the most popular 2D web renderer, at a ninth of its size, in 2dbench.
  • Crisp pixel art out of the box. Integer scaling, pixel snapping, and debuff sans, our pixel font, as the default for text.
  • Tests that play the real game. Logic tests run the actual game in Node in milliseconds, scenarios check it in a browser (including flashes and contrast), and a fuzzer plays it with random hands until something breaks. Every finding replays exactly.
  • Dev tools that explain things. Errors say whose bug it is and link the exact source line. Rewind and scrub a live session. Frame drops say why. Feel values become live sliders.
  • Agents as helpers, people in charge. An MCP server and plugins for Claude Code and Codex let agents play the game you have open, read its state and errors, and run the tests. You see everything they do and can undo it.
  • Web standards only. ES modules, a canvas, Web Audio and Gamepad. No proprietary editor or project format.

Status: 0.21, early development. APIs will change, and feedback from real games shapes them.

Tools for any web game

These work without debuff, alongside Phaser, PixiJS, three.js, KAPLAY or a plain canvas:

 spryte
 The renderer inside debuff, standalone. Immediate mode, batched WebGL2 with a Canvas 2D fallback, about 10 kB.
 tenten
 Headless pixel art for coding agents: sprites and animations over MCP, a CLI or a TypeScript API. Reads and writes .aseprite.
 plonk
 Game music made in code. Songs are tiny data, synthesized live with Web Audio. No audio files, a few kB.
 myaku
 A frame profiler that finds the hitches players feel and says why in plain words.
 keiko
 Fast, deterministic logic tests that run your real game in Node, no browser.
 game-lint
 Lint rules for oxlint and ESLint: unseeded randomness, real clocks and timers that break replays, allocations in update loops.
 2dbench
 An open, fair benchmark for 2D web renderers, with a pixel-parity gate. Run it on your device.
 2d-web-game-skills
 Agent skills for writing and reviewing 2D web games.

Repositories

Repo What's there
debuff Runtime packages, CLI, scaffolder, MCP server, keiko, myaku, plonk, templates
spryte The renderer: WebGL2 sprites, shapes, text, render targets and shaders, with a Canvas 2D fallback
tenten Headless, scriptable pixel art and animation; .tt and .aseprite
2dbench Open benchmark for 2D web renderers, with community results from many devices
game-lint Lint rules for game logic, one plugin for oxlint and ESLint
plugins Official and community plugins for debuff
2d-web-game-skills Agent skills for 2D web games
overbuffed A swarm survival game starring buff, built in the open to find what debuff should do better. Play it
debuff-sans Our pixel font as TTF, BDF and a sprite sheet, under the SIL Open Font License
brand The foundation mark, the debuff wordmark, buff the mascot, sprite sheet and social card

buff, the debuff mascot

Get involved

Pinned Loading

  1. debuff debuff Public

    Open-source framework for 2D browser games. It handles the boring bits so you can get to the fun part sooner.

    TypeScript 4 1

  2. spryte spryte Public

    Blazing fast 2D renderer for the web: 2-4x faster than the most popular one, at a ninth of its size. Verified in an open benchmark.

    TypeScript 3 1

  3. 2dbench 2dbench Public

    An open, fair benchmark for 2D web renderers: same scenes, same simulation, pixel-parity gated, full environment with every result

    TypeScript 1 1

  4. tenten tenten Public

    tenten: a headless, scriptable pixel-art and animation tool. Text grids and ops over an MCP server, a CLI and a TypeScript API; imports and exports .aseprite

    TypeScript

Repositories

Showing 10 of 11 repositories
  • debuff Public

    Open-source framework for 2D browser games. It handles the boring bits so you can get to the fun part sooner.

    debuffjp/debuff's past year of commit activity
    TypeScript 4 MIT 1 0 3 Updated Oct 30, 2026
  • spryte Public

    Blazing fast 2D renderer for the web: 2-4x faster than the most popular one, at a ninth of its size. Verified in an open benchmark.

    debuffjp/spryte's past year of commit activity
    TypeScript 3 MIT 1 0 0 Updated Oct 30, 2026
  • overbuffed Public

    A bullet-heaven roguelite starring buff. Open dogfooding project for debuff.

    debuffjp/overbuffed's past year of commit activity
    TypeScript 1 MIT 0 0 1 Updated Oct 30, 2026
  • game-lint Public

    Lint rules for game code: no unseeded randomness, real clocks or browser timers in game logic, no per-item allocation in update loops. One plugin for oxlint and ESLint.

    debuffjp/game-lint's past year of commit activity
    JavaScript 0 MIT 0 0 0 Updated Oct 30, 2026
  • 2dbench Public

    An open, fair benchmark for 2D web renderers: same scenes, same simulation, pixel-parity gated, full environment with every result

    debuffjp/2dbench's past year of commit activity
    TypeScript 1 MIT 1 0 1 Updated Oct 29, 2026
  • .github Public

    Debuff Foundation profile and community health defaults

    debuffjp/.github's past year of commit activity
    0 0 0 0 Updated Oct 29, 2026
  • tenten Public

    tenten: a headless, scriptable pixel-art and animation tool. Text grids and ops over an MCP server, a CLI and a TypeScript API; imports and exports .aseprite

    debuffjp/tenten's past year of commit activity
    TypeScript 0 MIT 0 0 0 Updated Oct 28, 2026
  • plugins Public

    Official and community plugins for debuff

    debuffjp/plugins's past year of commit activity
    TypeScript 0 0 0 0 Updated Oct 27, 2026
  • 2d-web-game-skills Public

    Agent skills for writing and reviewing 2D web games

    debuffjp/2d-web-game-skills's past year of commit activity
    JavaScript 0 MIT 0 0 0 Updated Oct 26, 2026
  • debuff-sans Public

    A pixel font for 2D web games, made for debuff. TTF, BDF and PNG sheet. SIL OFL 1.1.

    debuffjp/debuff-sans's past year of commit activity
    JavaScript 0 OFL-1.1 0 0 0 Updated Oct 20, 2026

Sponsors

  • @wvdsh

Top languages

Loading…

Most used topics

Loading…