Skip to content

Sim-Database #35

Description

@SeeChen

Goal

Design and implement a front-end simulated backend data engine for SeeChen Website.

Planned direction

This issue is intentionally planned after Version A - Amber. Amber will keep the data layer simple and focus on static JSON resources, pagination, and page-level integration.

The future Sim-Database should demonstrate a backend-like data access chain in a pure front-end environment:

  1. API facade: pages call an API-like interface instead of reading files directly.
  2. Service / merge layer: combines multiple logical data sources for page needs.
  3. Logical query layer: describes queries without knowing actual JSON / CSV file paths.
  4. Compiler / planner layer: maps logical queries such as select / filter / cursor into static shard access plans.
  5. Storage adapter layer: reads JSON / CSV shards and returns normalized results.

Initial scope for a future version

  • Support JSON first.
  • Support one showcase collection before expanding.
  • Support filter, sort, limit, cursor, and projection.
  • Support static shard routing through manifest / index files.
  • Keep the same repository-facing API so it can later be replaced by a real backend.

Out of scope for Version A - Amber

  • Full SQL parser.
  • Full MongoDB query compatibility.
  • CSV + JSON synchronization.
  • Complex indexing engine.
  • Using Sim-Database as a required runtime dependency for normal pages.

Metadata

Metadata

Assignees

No one assigned

    Labels

    architectureCore structure and system design work.data-layerResource loading, repositories, and future backend adapters.implementImplement planned features

    Projects

    Status
    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions