// the find
amethyst/bracket-lib
The Roguelike Toolkit (RLTK), implemented for Rust.
bracket-lib is a Rust toolkit for building roguelikes and other tile-based games, covering everything from CP437 terminal rendering to A* pathfinding to field-of-view. It started as RLTK and grew into a workspace of composable crates you can use piecemeal or all at once. The primary audience is people working through the 'Hands-on Rust' book or building ASCII-style games.
The crate decomposition is well thought out — you can pull in just bracket-pathfinding or bracket-noise without dragging in the terminal layer. The pathfinding crate includes both A* and Dijkstra maps, which is exactly what roguelikes need, and there are benchmarks to back up the performance claims. Multiple rendering backends (OpenGL, WebGPU, crossterm, ncurses, WASM) mean you can target native, web, and terminal from the same game logic. The accompanying tutorial book is genuinely thorough — not just a README with a few examples.
The library is tightly coupled to the author's book; outside that context, the API surface is large and the manual is still sparse. The Bevy integration (bracket-bevy) looks bolted on rather than native — it wraps bracket's terminal abstractions over Bevy's ECS, which means you're fighting two paradigms. Dependency churn is a real issue: the README opens with a note to run 'cargo update' just to get things compiling, and the workspace has accumulated some backend complexity that makes the feature flag matrix confusing. Stars have plateaued around 1700 with the last meaningful push in late 2025, suggesting the project is in maintenance mode rather than active development.