A mobile-friendly D&D 5e combat and initiative tracker. Built with React + Vite.
- Persistent storage — NPC library and custom conditions auto-save to the device (localStorage), surviving page refreshes and app restarts
- Import NPCs from
.jsonor.monsterfiles — supports multiple stat block formats includinghp.average,hp.value, flat numbers, and the app's own export format - Export / Import your full NPC library and conditions list as
.jsonfiles — back them up or move them between devices - Initiative tracker — auto-sorts by roll, highest first
- HP tracking with visual HP bars
- Conditions tracker per combatant (staged, applied on turn confirm)
- Targeted damage/heal panel — deal damage to multiple targets at once
- Environment / Lair Action turns at custom initiative
- Pre-built NPC library (20 monsters included, fully customisable)
- Auto-numbering for duplicate NPCs (Goblin 1, Goblin 2…)
- Add combatants mid-combat with correct turn-order handling
- Round counter, Prev/Next navigation (Prev never undoes HP changes)
- Player (PC) vs NPC/DM character tagging
- Fully mobile-optimised — large tap targets, number pad inputs, installable as a home screen app
- Go to github.com and sign in (or create a free account)
- Click the + button (top right) → New repository
- Name it
dnd-combat-tracker, leave everything else as default, click Create repository - On the next page, click uploading an existing file
- Drag and drop all the files and folders from this zip into the upload area
- Make sure the folder structure is preserved:
src/,public/, and the root files
- Make sure the folder structure is preserved:
- Click Commit changes
- Go to vercel.com and sign in with your GitHub account
- Click Add New → Project
- Find your
dnd-combat-trackerrepository and click Import - Leave all settings as default — Vercel auto-detects Vite
- Click Deploy
- After ~1 minute you'll get a live URL like
dnd-combat-tracker.vercel.app
- Open your Vercel URL in Safari (must be Safari, not Chrome)
- Tap the Share button (box with arrow pointing up)
- Tap Add to Home Screen
- Tap Add
The app will appear on your home screen with a sword icon and launch full-screen, like a native app.