summaryrefslogtreecommitdiff
path: root/frontend/README.md
blob: 1b07050693938df7cb75665e4e5983df3dd508c2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# PC-98 Visual Novel Skeleton (React + TypeScript + Vite)

A responsive PC-98-style VN UI with CRT effects, dialogue box with nameplate, choice menu, and a WebSocket client stub for a Rust backend.

Quick start
1. cd pc98-vn
2. npm install  (or yarn / bun install)
3. npm run dev   (or yarn dev / bun run dev)

Optional: Add a background image at public/bg.jpg. If absent, the app still runs using the base gradients.

WebSocket wiring
- Client URL is in src/services/ws.ts (default: ws://localhost:8080/ws).
- Client sends on choice: { type: 'user_choice', id, label }.
- Client expects messages like:
  - { type: 'assistant', content: string }
  - { type: 'choices', items: [{ id: string, label: string }, ...] }
  - { type: 'bg', src: string }
  - { type: 'name', value: string }
  - { type: 'system', content: string }

Notes
- Aspect ratio ~16:10 for PC-98 feel (similar to 640x400). CRT scanlines and glow included.
- Uses DotGothic16 as an optional pixel-like font from Google Fonts.
- Portrait overlays can be positioned inside VNViewport's ui-layer.