Part of #233: Architecture: Unify curses-java and curses-themes with shared implementation ## Scope After the prototype (Borland3D) proves out, extract all remaining themes from hardcoded Java to JSON files. ## Tasks - [ ] Convert all 11+ themes to JSON format: - Borland, Borland3D, DBase3, DBase4, DBase4_3D, DOS, TRS-80, TI-99/4A, and others - [ ] Validate each JSON file against the canonical schema - [ ] Update curses-java to load all themes from JSON via the `JsonThemeLoader` - [ ] Verify rendering output matches for every theme - [ ] Deprecate hardcoded theme classes (or keep as fallback during transition) ## Acceptance Criteria - [ ] All themes have corresponding validated JSON files - [ ] All themes render identically when loaded from JSON - [ ] Theme JSON files are stored in a well-defined location (e.g., `src/main/resources/themes/`) - [ ] No regressions in existing tests
Part of #233: Architecture: Unify curses-java and curses-themes with shared implementation
Scope
After the prototype (Borland3D) proves out, extract all remaining themes from hardcoded Java to JSON files.
Tasks
JsonThemeLoaderAcceptance Criteria
src/main/resources/themes/)