- Set up project structure
- Set up Dexie.js database
- Create modern, clean UI layout (ditch old Bootstrap look)
- Test that database works
- Character sheet (proper, full-featured)
- Oracle roller (with history)
- Twist counter
- Scene management
- Conflict system (Harm & Luck)
- Get Inspired / random tables
- session management
- Note editor with auto-insert
- NPC Manager
- Location Manager
- Narrative Threads
- Event Log
Implement the Adventure Maker and other tables from Loner:
- Settings, Tones, Things tables
- Opposition, Actions tables
- Thematic Tables from various Loner supplements
- Custom user tables
- Quick roller with history
- Log the result both in the Notes and the Events Log
- Make this extensible, so we can update the tables in time, everytime I publish a new supplement
Every Loner supplement has its custom version of the Get Inspired tables, we should offer them to the user to be selected which flavor they wants to use
Why this? Use all the amazing random generators from the Loner rulebook.
Prioritized approach to refine the application for smooth, responsive gameplay.
Quick access to frequent actions during play sessions:
Alt+O- Roll OracleAlt+T- Roll TableAlt+N- Create new note entryAlt+W- Mark twist event- Others as appropriate per section
Why first? Low complexity, high value for play experience. During active gameplay, keyboard shortcuts dramatically improve flow by reducing mouse dependency.
Ensure playable on tablets/phones during sessions:
- Oracle roller - full functionality on mobile
- Notes editor - readable and editable on small screens
- Table roller - accessible two-step selection
- Focus on tablet as baseline (iPad, large phones)
- Desktop-first implementation, mobile-friendly enhancements
Why? Players may want to use this tool in the field or away from desk. Tablet support especially valuable.
Improve responsiveness perception:
- Loading states for rolls and database saves
- Toast notifications for success/error messages
- Subtle animations (button feedback, panel transitions, smooth scrolling)
- Better empty states ("No sessions yet — create one to get started")
- Improved hover effects and focus states for accessibility
- Consistent visual hierarchy and spacing
Why? Makes the app feel reactive and professional. Small details add up to better UX.
Nice-to-have for organizing content:
- Reorder NPCs, threads, events
- Save new order to database
- Consider if this is actually needed vs. create/delete/re-sort by date
Why it's lower? Not critical to gameplay. Evaluate whether worth the complexity.
Only implement if tool will be used by others:
- First-run walkthrough (optional)
- Help panels or "?" buttons per section
- Introductory tooltips for unfamiliar UI
Why conditional? If this is just for Roberto's solo use, may not justify effort. Reassess based on actual audience.
Implementation Approach:
- Start with keyboard shortcuts - quick wins that improve daily usage
- Test responsiveness as you go (resize browser, inspect on phone)
- Add visual feedback incrementally (one notification system covers many cases)
- Skip drag-and-drop unless explicitly requested
- Evaluate tutorial/onboarding after collecting feedback
Key Questions Before Starting:
- Is this tool for solo use or will others use it?
- Which gameplay actions feel most friction-heavy?
- Is mobile support "nice to have" or not a priority?
loner-assistant-v2/
├── index.html
├── css/
│ └── style.css
├── js/
│ ├── database.js ← All data storage
│ ├── ui.js ← UI helpers
│ ├── oracle.js ← Dice rolling
│ ├── campaigns.js ← Campaign management
│ ├── sessions.js ← Session management
│ ├── characters.js ← Character sheets
│ ├── editor.js ← Note editor
│ ├── tables.js ← Roll tables
│ ├── npcs.js ← NPCs management
│ ├── threads.js ← Threads management
│ ├── locations.js ← Locations management
│ └── main.js ← Connects everything
├── data/
│ └── core-tables.js ← Built-in Loner tables
└── lib/
├── dexie.min.js ← Database library
└── quill.min.js ← Text editor