- DiceTray: remove pointer-events:auto from .active so UI remains clickable during dice animation - FogOverlay: accept intensity prop, map 0-100 to 0.15-1.0 opacity - CampaignView: pass fog intensity to FogOverlay - InfoPanel: auto-derive Shadowdark title when class/alignment/level changes - Add shadowdark-titles.ts utility with full title lookup table from Player Quickstart - Add CLAUDE.md with project instructions and pre-approved permissions Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
27 lines
1 KiB
Markdown
27 lines
1 KiB
Markdown
# Darkwatch — Claude Code Instructions
|
|
|
|
## Permissions
|
|
|
|
All tool uses are pre-approved for this project. No confirmation needed for:
|
|
- Reading, writing, or editing any file in this project
|
|
- Running bash commands (npm, git, docker, curl, lsof, kill, pkill, etc.)
|
|
- Spawning subagents
|
|
- Searching files (Glob, Grep)
|
|
|
|
## Project Overview
|
|
|
|
This is **Darkwatch**, a real-time session manager for the Shadowdark TTRPG.
|
|
|
|
- **Client:** `client/` — React + Vite + TypeScript + CSS Modules
|
|
- **Server:** `server/` — Express + Socket.IO + MariaDB (mysql2/promise)
|
|
- **DB:** MariaDB 11 in Docker (`darkwatch-maria` container, port 3307)
|
|
- **Worktrees:** `.worktrees/` (gitignored)
|
|
- **Roadmap:** `docs/ROADMAP.md`
|
|
|
|
## Important Rules
|
|
|
|
- NEVER touch the `mysql` Docker container — only `darkwatch-*` containers
|
|
- DB port is 3307 (not 3306) to avoid conflicts
|
|
- Local git repo only — commits are fine, NEVER push
|
|
- All imports use `.js` extensions (ES modules)
|
|
- Dev seed accounts: `dm@darkwatch.test` / `player@darkwatch.test` (password: `password`)
|