Commit Graph

13 Commits

Author SHA1 Message Date
Jeffrey Wilcke
59ba72f0e0 fix: review findings
- screen transitions snapshot the previous frame (ratatui swaps buffers
  after draw, so the old snapshot was always blank); frame loop extracted
  into a testable Runner
- .city loading rejects structurally inconsistent files: Grid deserialize
  checks size vs data, load_city checks header vs body and runs
  City::validate (now also checks Net link endpoints)
- saving from the map hands the live map screen back instead of a fresh
  explore screen
- signage glyphs covered by the unicode-width test

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-12 18:23:15 +02:00
Jeffrey Wilcke
3c75674489 docs: README, dead-code cleanup, smoke fixes
- README with run instructions and key reference
- lift the crate-level dead_code allowance; scope it to the anim library surface
- render paths tolerate a city that is still generating (district/building ids
  without entries), found by driving the app through a pty
- status messages show in the status bar, not only inside the inspector
- buffered JSON export (26 s -> 0.4 s for a large city)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-12 18:02:46 +02:00
Jeffrey Wilcke
48320eb0e6 feat(city): explore and walk screens with panels and help
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-12 17:54:00 +02:00
Jeffrey Wilcke
df448525c2 feat(city): walker with symmetric shadowcasting FOV
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-12 17:51:14 +02:00
Jeffrey Wilcke
997814e2f3 feat(city): title, configure and files screens
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-12 17:49:49 +02:00
Jeffrey Wilcke
73596eadd2 feat(city): animated generating screen
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-12 17:47:14 +02:00
Jeffrey Wilcke
acd0286bab feat(city): logo, menu, form, panels and transitions
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-12 17:45:16 +02:00
Jeffrey Wilcke
741231c25b feat(city): digital net overlay
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-12 17:42:11 +02:00
Jeffrey Wilcke
d43f1b68f0 feat(city): map viewport, camera, minimap, weather and traffic overlays
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-12 17:41:04 +02:00
Jeffrey Wilcke
f005d0c1b2 feat(city): style pack, tileset and lighting
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-12 17:37:36 +02:00
Jeffrey Wilcke
0e14cd14fc feat(city): animation primitives and effects
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-12 17:34:04 +02:00
Jeffrey Wilcke
68be96a8b2 feat(city): app loop, terminal guard, save format, gen CLI
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-12 17:33:18 +02:00
Jeffrey Wilcke
76c07e2927 chore: cargo workspace with citygen and city crates
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-12 16:39:05 +02:00