Skip to the content.

Architecture

High-level Flow

  1. Load token → cache → quota
  2. Resolve workspace, projects, clients, entries (cache-first)
  3. Group entries by project + client
  4. Render dashboard

Modules

Cache Strategy

Cache records are keyed by:

token_hash + workspace_id + date_range

Manual refresh (r) attempts API calls; otherwise cache is used whenever available.