1.7 KiB
1.7 KiB
UI Polish
- On the home page, rejoin a crew should be above muster a crew, and there should be a gap between the two boxes
Words Words Words
- Example Play formatting. The Example Play section of the Rules page could use a bit more formatting for legibility. Make diagrams of the card state at each step rather than just a text listing.
- Suggestions. Take a pass through all of the suggestions in suggestions.js, rewrite ones that are stiff, awkward, or don't fit the theme/setting as described in the rulebook. Move the suggestion pool from suggestions.js into a backend API endpoint.
- TLDR rules. A one page summary sheet of the rulebook, for the impatient
- Version number and change log
Security
- Defensive coding. While we trust our players, this app is exposed on the open internet. I'd like to take basic precautions like making sure we're safe against SQL injection (SQLModel should handle this?), doing some basic sanitizing of free inputs from players (valid unicode only + generous character limit should be enough), and making sure that every game action API call is specific and constrained enough that it can't just do arbitrary database updates.
Gameplay gaps
- Finish the Rank-3 story bonus. A Pi-Rat who completes their 3rd Personal Objective (RULEBOOK §93) now gets a "⭐ Your Story is Complete!" modal (
RankBonusModal.svelte, keyed onneeds_rank_3_bonus) to grant another eligible crewmate +1 Rank — or forfeit it when none qualify. (Done 2026-06-15: logic incrud_scene.grant_story_bonus_rankreusing the sharedis_eligible_nomineeguard; route slimmed to the (ok, msg) convention; unit tests added; verified end-to-end in the browser.)