# Sheets A browser-based D&D 2024 character builder written in Gleam and Lustre. It loads rules data from a URL supplied by the user and keeps a local, versioned character library in the browser. ## Features - D&D 2024 classes, subclasses, species, backgrounds, feats, spells, and equipment - Level-by-level class features and choices - Final ability scores and modifiers, including background and feat bonuses, plus skills, armor class, hit points, initiative, passive Perception, spell preparation, and spell save calculations - Gold, inventory quantities, equipped items, and tool proficiencies - Play-state tracking for spell slots, limited-use class resources, short and long rests, Hit Dice, death saves, Inspiration, Concentration, Exhaustion, and conditions - Consumable quantities, tracked item charges, attunement, and configurable custom resources - Printable character sheet - Versioned JSON character import and export - End-to-end encrypted Iroh table sessions: players share their sheets and can inspect the other connected characters; the Game Master gets a complete read-only sheet for each player including current hit points, spell slots, Hit Dice, class resources, conditions, and other play-state counters Rules data is supplied at runtime and is not configured in the application build. ## Development Requirements: Gleam 1.17 or newer and Bun. Start the Lustre development server: ```sh gleam run -m lustre/dev start ``` Open , select **Data** in the header, and enter the base URL for a compatible rules data directory. The directory must contain `races.json`, `backgrounds.json`, `feats.json`, `items-base.json`, `class/`, `generated/`, and `spells/`. The URL is normalized with a trailing slash and stored only in the current browser. Create a production build with: ```sh gleam run -m lustre/dev build ``` ## Verification ```sh gleam format --check src test gleam check gleam test ```