2026-08-08 17:41:30 +09:00
# Prefecture Map Generator
A browser-based procedural prefecture map generator.
## Project layout
- `src/` - application modules and web workers
- `styles/` - application styles
- `tests/` - reusable browser and Node.js tests
- `scripts/` - local development server helpers
2026-08-10 13:59:33 +09:00
- `docs/` - design history and release verification
2026-08-08 17:41:30 +09:00
- `archive/` - recoverable historical and legacy files, excluded from the active app
- `index.html` - application entry point
## Run locally
On Windows:
```bat
scripts\start_server.bat 8000
```
On macOS or Linux:
```sh
./scripts/start_server.sh 8000
```
Then open `http://127.0.0.1:8000/` .
## Tests
2026-08-10 13:59:33 +09:00
Run the aggregate Node.js regression runner:
2026-08-08 17:41:30 +09:00
```sh
node tests/test-all.mjs
```
2026-08-10 13:59:33 +09:00
Heavy full-map shards can also be run independently, which is the recommended CI layout for memory-constrained workers:
```sh
node tests/additional-generation-unit.mjs
node tests/additional-generation-coverage-worker.mjs
node tests/test.js --suite=core
node tests/test.js --suite=terrain
node tests/test.js --suite=terrain-name
node tests/test.js --suite=admin
node tests/test.js --suite=patch
node tests/test.js --suite=patch-large
node tests/test.js --suite=determinism-114514
```
Run the focused additional-generation release gates:
```sh
node tests/patch-worker-mirror-sync.mjs
node tests/patch-worker-cancel.mjs
node tests/additional-generation-max-worker.mjs
```
The maximum-visible Expansion gate accepts a world seed and Variant through environment variables. CI should run these as independent matrix jobs rather than retaining multiple full worlds in one process:
```sh
PATCH_TEST_WORLD_SEED=12345 PATCH_TEST_VARIANT=0 node tests/additional-generation-max-worker.mjs
PATCH_TEST_WORLD_SEED=54321 PATCH_TEST_VARIANT=1 node tests/additional-generation-max-worker.mjs
```
Run the browser smoke profile:
```sh
node tests/run-additional-generation-browser.mjs
```
Run the 20-sample maximum-visible Expansion browser profile:
```sh
BROWSER_E2E_PROFILE=release \
BROWSER_E2E_WORKLOADS=expansion-max-visible \
node tests/run-additional-generation-browser.mjs
```
The browser test page is also available at `http://127.0.0.1:8000/tests/test.html` .
For the current r3 additional-generation verification record, see `docs/additional-generation-release-verification-20260810.md` .