Skip to content

fedesem/roll-and-die

Repository files navigation

Roll or Die

Roll or Die is a PWA-ready Dungeon and Dragons 5e 2024 campaign board built as a Vite monorepo with a React frontend and a Node/Express backend.

Features

  • Account registration and login with token-based sessions
  • Campaign rooms with role-based membership (dm or player)
  • Invite codes for joining campaigns
  • Screenshot-inspired dark/gold interactive character sheet
  • Editable characters, NPCs, and monsters
  • Monster catalog for DMs
  • Tactical board with multiple maps and per-map token positions
  • Adjustable grid with scale and offsets
  • Drawing, walls, and fog of war
  • One chat per campaign room
  • Dice rolls from sheet actions or /roll 1d20+5 in chat
  • SQLite-backed persistence in the backend
  • PWA manifest and service worker via vite-plugin-pwa

Workspace

  • client: React + Vite frontend
  • server: Express API and persistence
  • shared: shared TypeScript models

Run

cp example.env .env
./app.sh npm install
./app.sh up

Set APP_MODE=prod in .env when you want the production container instead of the dev one.

Frontend: http://localhost:5174

Backend: http://localhost:4000

Build

Use ./app.sh build to build the active Docker profile from .env.

Data

The backend stores persistent data in data/app.sqlite, created automatically on first run.

About

A D&D board

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages