Skip to content

Architecture: Extract all curses-java theme data into JSON format #262

Description

@sfloess

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions