Back to the CV

DnD Sidekick

A player-centred web app for D&D 5e character sheets that works offline at the table, with spells, inventory, a rules compendium and a character roster.

Character sheet
Status
Self-hosted, in development

What it does

  • Playable character sheet with inline editing and panels that change with the class (Artificer and Monk so far).
  • Character roster: guided creation, level up, duplicate, and JSON export and import.
  • Spells (prepared, slots, homebrew) and inventory with weight, containers and homebrew items. Armour class and attacks come from the equipped gear.
  • Rules compendium across several sourcebooks, with full rules text and tables.

How it is built

  • Offline PWA on React, TypeScript and Vite. Character state lives in IndexedDB through Dexie, and the rules ship as static JSON produced by an import script.
  • The stack favours long-lived, widely used pieces over newer local-first sync engines. A backend for live sync between players and the DM is a later phase.
  • The class-adaptive interface uses a class descriptor and a registry of panels, so a new class is data plus a few panels.
  • Tested with Vitest, Testing Library and Playwright.
Spells
Rules compendium

Technologies

  • React
  • TypeScript
  • Vite
  • PWA
  • IndexedDB
  • Dexie
  • Vitest
  • Playwright