# hecrj/coffee

An opinionated 2D game engine for Rust

Repository: https://github.com/hecrj/coffee
Canonical: https://ross.abutalabs.com/products/hecrj-coffee
Homepage: https://docs.rs/coffee
Language: Rust
License: MIT
License Family: permissive
Topics: game, engine, rust, game-development, game-engine, gamedev, 2d-game-engine
Last push: 2024-03-03T11:30:40+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": 2710, "days_push": 913, "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 1146, forks 56 (observed 2026-08-28T04:03:45.784532+00:00)

## What it is
Coffee is an opinionated 2D game engine for Rust focused on simplicity, explicitness, and type-safety. It provides a hardware-accelerated 2D graphics API, built-in GUI, loading screens, a debug view, and multiplatform backends via OpenGL, Vulkan, Metal, and D3D11/12.

## Use cases
- build a 2D game in Rust
- make a 2D game with a simple Rust game engine
- create a cross-platform 2D game with hardware-accelerated graphics
- add a responsive GUI to a Rust game
- render batched sprites and meshes in Rust
- prototype a small 2D game with deterministic fixed timestep

## When to choose
- You want a simple, explicit, type-safe 2D engine in Rust
- You need built-in GUI, loading screens, and a debug performance view
- You want multiplatform graphics backends (OpenGL, Vulkan, Metal, D3D11/12)
- You value deterministic fixed timestep and batched draws

## When to avoid
- You need a mature, feature-complete engine - Coffee is in a very early stage with many basic features missing
- You need 3D rendering
- You need long-term stability - the master branch can contain breaking changes and releases are infrequent
- You need a large community and ecosystem

## Facets
- artifact type: library
- maturity: maintenance
- function: game-engine, graphics, gui
- domain: graphics, cross-platform
- platform: windows, rust, cross-platform
- tags: 2d, gamedev, opinionated, type-safety, wgpu, opengl, vulkan, metal, gamepad-support, sprite-batching, game-development, linux, macos

## Member repositories
- hecrj/coffee (main) score 23

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:03:45.784532+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:34:10.567586+00:00, confidence not recorded.
  - readme: https://github.com/hecrj/coffee (fetched 2026-08-28T04:03:45.784532+00:00, sha e057c27a23e8)
  - homepage: https://docs.rs/coffee (fetched 2026-08-29T12:39:31.642250+00:00, sha b1c1f490b54a)
  - site_page: https://docs.rs/about/builds (fetched 2026-08-29T12:39:31.660247+00:00, sha 811231ca4680)
  - site_page: https://docs.rs/ (fetched 2026-08-29T12:39:31.651607+00:00, sha bd558917e69a)
  - site_page: https://docs.rs/crate/coffee/latest (fetched 2026-08-29T12:39:31.653555+00:00, sha 96af19e7d960)
  - site_page: https://docs.rs/crate/coffee/latest/features (fetched 2026-08-29T12:39:31.655435+00:00, sha 26ec0f89102d)
  - site_page: https://docs.rs/about (fetched 2026-08-29T12:39:31.657278+00:00, sha 29ab7986fbf5)
  - site_page: https://docs.rs/about/badges (fetched 2026-08-29T12:39:31.658803+00:00, sha 6588cac258af)
  - site_page: https://docs.rs/about/metadata (fetched 2026-08-29T12:39:31.661773+00:00, sha 0dcdccb2b2b2)
  - site_page: https://docs.rs/about/redirections (fetched 2026-08-29T12:39:31.663355+00:00, sha 1b1efd93105f)
- Data as of 2026-08-30T08:39:29.467469+00:00.
