building out the components, updating the UI in overview and adding a little sqlite viewer

This commit is contained in:
itsamejms
2026-07-17 09:31:51 +01:00
parent 82f2dcf3df
commit b89a39ec9d
30 changed files with 2664 additions and 635 deletions
+41 -33
View File
@@ -4,8 +4,15 @@
ordered by impact, not file order. Each item ships with a concrete, checkable
recommendation.*
> **Status:** in progress — P0 and P1 shipped, P2 largely done. The
> checklist below is updated as items land.
> **Status:** in progress — P0 and P1 shipped, P2 mostly done. Initiative,
> Dice, Encounter, Settings, Cross-cutting, Random Tables, Session Logger,
> Calendar, and Lore Panel are complete. NPC/Item/Quest have stat/structured/
> reward fields shipped; remaining P2 items are larger-effort or backend-
> gated: image-gen advanced params (Ollama API doesn't support them),
> soundboard scenes + real ambience packs, world hierarchy tree, lore
> directory picker (needs tauri-plugin-dialog), NPC roster / item inventory /
> quest roster (History view covers re-opening). The checklist below is
> updated as items land.
---
@@ -1045,7 +1052,7 @@ These are blockers or bugs that make the app feel broken.
### P2 — Important (next month)
- [ ] **Initiative Tracker**:
- [x] **Initiative Tracker**:
- [x] Click-to-edit initiative number
- [x] Custom conditions
- [x] Damage input (numeric, not +/- only)
@@ -1055,12 +1062,12 @@ These are blockers or bugs that make the app feel broken.
- [x] Highlight next-up combatant
- [x] Confirm before Reset
- [x] "Import from Encounter" button
- [ ] **Dice Roller**:
- [x] **Dice Roller**:
- [x] Modifier input (saved per session)
- [x] Spacebar rolls
- [x] Roll templates (Attack, Save, Check, Damage)
- [x] Clear/copy history
- [ ] **Encounter Builder**:
- [x] **Encounter Builder**:
- [x] XP budget math (party size, level, difficulty)
- [x] Color-coded difficulty
- [x] Send to Initiative Tracker
@@ -1070,43 +1077,43 @@ These are blockers or bugs that make the app feel broken.
- [ ] **NPC Generator**:
- [x] Rename "Class" to "Background" with curated list
- [x] Expand races to 9 (Half-Orc, Goliath)
- [ ] NPC Roster view
- [ ] Stat block section (AC, HP, ability scores)
- [ ] NPC Roster view (History view covers re-opening past NPCs)
- [x] Stat block section (AC, HP, ability scores)
- [x] Random name button
- [ ] Save portrait (right-click)
- [x] Edit personality/goals in-place
- [ ] **Item Forge**:
- [x] Click art to expand
- [ ] Structured mechanics (attunement, charges, value, weight)
- [ ] Save to inventory
- [x] Structured mechanics (attunement, charges, value, weight)
- [ ] Save to inventory (History view covers re-opening past items)
- [x] Random item button
- [ ] **Quest Designer**:
- [ ] Branching quest graph (react-flow)
- [x] Step status (Pending/Active/Done)
- [x] Player-facing view toggle (hide Twist)
- [ ] Reward breakdown (XP per character, gold, items)
- [ ] Quest roster
- [x] Reward breakdown (XP per character, gold, items)
- [ ] Quest roster (History view covers re-opening past quests)
- [ ] **Image Generator**:
- [ ] Negative prompt, seed, aspect ratio, steps, guidance
- [ ] Batch mode (2×2 variants)
- [ ] Gallery view with thumbnails
- [x] Persist to campaign-scoped folder
- [x] Copy to clipboard
- [ ] **Session Logger**:
- [ ] Markdown editor + live preview
- [ ] Sessions as first-class concept (multiple sessions)
- [x] **Session Logger**:
- [x] Markdown editor + live preview (minimal renderer; no dep)
- [x] Sessions as first-class concept (multiple sessions)
- [x] Streaming AI summary
- [x] Export to Markdown
- [x] Per-entry actions (edit, delete, highlight)
- [ ] Tags
- [ ] **Calendar**:
- [ ] Custom calendar editor
- [x] Tags
- [x] **Calendar**:
- [x] Custom calendar editor
- [x] Current campaign date with "Next day" button
- [x] Weather generator
- [x] Moon phases
- [ ] Event categories with colors
- [ ] Recurring events
- [ ] Agenda view
- [x] Event categories with colors
- [x] Recurring events
- [x] Agenda view
- [ ] **Soundboard**:
- [ ] Real ambience pack (23 royalty-free loops)
- [ ] Custom sound import (drag-drop)
@@ -1115,33 +1122,34 @@ These are blockers or bugs that make the app feel broken.
- [x] Always-visible Stop All
- [x] Save/load board state
- [x] Pre-warm AudioContext
- [ ] **Random Tables**:
- [x] **Random Tables**:
- [x] 10+ more built-in tables
- [ ] User-defined tables (create/edit/delete)
- [ ] Table import (paste Markdown)
- [ ] Weighted tables
- [x] User-defined tables (create/edit/delete)
- [x] Table import (paste Markdown)
- [x] Weighted tables (weight % + gap warning)
- [x] Export table
- [ ] **World Builder**:
- [x] Map canvas (react-konva)
- [x] Theme presets
- [ ] Hierarchy tree
- [x] Persist world
- [ ] **Lore Panel**:
- [ ] Two-pane layout
- [ ] Drag-drop file upload
- [ ] Directory picker
- [ ] Chunk preview
- [ ] Source filter
- [x] **Lore Panel**:
- [x] Two-pane layout
- [x] Drag-drop file upload (via native file input; directory picker needs tauri-plugin-dialog)
- [ ] Directory picker (needs tauri-plugin-dialog)
- [x] Chunk preview
- [x] Source filter
- [x] ★ relevance (not raw cosine)
- [x] Confirm before "Clear all"
- [ ] **Settings**:
- [x] **Settings**:
- [x] Group into fieldsets (Connection, Text, Image, Embedding, Danger)
- [x] Connection test with model list
- [x] Model picker with autocomplete (`GET /api/tags`)
- [x] Provider presets (Ollama, LM Studio, OpenAI, Anthropic, Custom)
- [x] Reset to defaults
- [ ] Export/import config
- [ ] **Cross-cutting**:
- [x] Export/import config
- [x] Configurable campaign data location (lore db, generations db, generated images) via a folder picker — migrates existing data and applies on restart
- [x] **Cross-cutting**:
- [x] Keyboard shortcuts: ⌘K, 19, Space, ⌘,, ⌘S, Esc, ?
- [x] Skeleton loaders for all async states
- [x] Empty states for all tools