Commit Graph

9 Commits

Author SHA1 Message Date
Bas van Rossem
79ea720d18 fix(web): use 127.0.0.1 instead of localhost in Vite proxy
Fixes ECONNREFUSED ::1:3000 on Windows where localhost resolves to IPv6
but Fastify binds to IPv4 (0.0.0.0).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:39:12 +01:00
Bas van Rossem
510820b77a feat(web): add Rules/Reference page with collapsible battle reference sections
Embeds Battle reference.md content as collapsible sections with markdown
rendering, expand/collapse all controls, and styled tables and blockquotes.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:29:07 +01:00
Bas van Rossem
b3a55d9fac feat(web): add reusable ConfirmDialog and polish delete interactions
Extracts reusable ConfirmDialog component, refactors ship delete to show
the ship name in confirmation, and improves interaction consistency.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:27:43 +01:00
Bas van Rossem
1ef2f6338c feat(web): implement weapons section with add/edit/detail modals and notes
Adds WeaponCard with inline ammo stepper and status dropdown, AddWeaponModal,
WeaponDetailModal with full editing, and debounced NotesSection.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:26:47 +01:00
Bas van Rossem
88e9bf7f05 feat(web): implement Ship Dashboard with vitals and mobility sections
Adds NumericStepper and EnumDropdown UI components, VitalsSection (hull/armor/AC/con),
MobilitySection (speed/maneuver class/size), with debounced real-time updates.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:24:53 +01:00
Bas van Rossem
130cffd3c1 feat(web): implement Ship List page with create and delete modals
Adds ship cards with navigation, create ship modal with initial stats,
inline delete confirmation, and supporting CSS for modals and cards.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:23:00 +01:00
Bas van Rossem
06428f79cd feat(web): add zustand stores and Socket.IO client
Implements ship list store (REST-based) and ship detail store (Socket.IO-based)
with room join/leave, reconnection handling, and real-time event listeners.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:21:22 +01:00
Bas van Rossem
5f275bfcc7 feat(web): set up React app shell with routing and layout
Adds react-router-dom with routes for ship list, dashboard, and rules pages.
Includes TopBar with navigation and mobile-first dark theme CSS.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:20:22 +01:00
Bas van Rossem
6d60d714d0 chore: initial project scaffold with Fastify server and Vite React app
Set up monorepo structure with server/ (Fastify + TypeScript) and web/ (React + Vite + TypeScript).
Includes package configs, dev proxy setup, and mobile-first CSS foundation.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:14:30 +01:00