Prox OS Docs
Architecture

API Map

Source: apps/api-worker/src/index.ts

Current API Worker

Source: apps/api-worker/src/index.ts

MethodPathStatusPurpose
GET/ImplementedReturns Hello Hono!. Smoke test only.
GET/healthImplementedReturns { ok, service, time } for worker health.
GET/openapi.jsonImplementedReturns the first minimal OpenAPI document for local API exploration.
GET/docsImplementedServes Scalar API Reference for the local worker.

The current OpenAPI document is a small hand-authored skeleton. Zod/OpenAPI route registration is still planned.

Current Shell API Usage

Current facts:

  • No fetch(...) calls were found in apps/os-shell/src.
  • QueryClientProvider is wired in apps/os-shell/src/providers, but no useQuery calls are active yet.
  • openapi-fetch is installed but not used.
  • msw is installed as a dev dependency but no handlers are present.
  • /app-dev/scalar-api embeds the local Scalar docs at http://localhost:8787/docs.
  • Local fixtures live in packages/os-apps/src/shared/mock-data.ts and app-local arrays.

Planned First OS Shell APIs

MethodPathScenarioNotes
GET/api/appsApp Store, registry inspection, community app discovery.Should return manifest summaries, not executable UI.
GET/api/settingsLoad synced shell display/user preferences.Mirrors localStorage-backed settings.
PATCH/api/settingsPersist changed preferences.Should accept partial updates.
GET/api/windows/layoutRestore persisted window sizes/positions across sessions.Current local size persistence is localStorage only.
PUT/api/windows/layoutSave window layout hints.Should be user/session scoped.
GET/api/user/sessionProfile, shell identity, signed-in state.Needed before real user-aware OS surfaces.

API Ownership

  • Hono worker owns HTTP routes, validation, and edge runtime behavior.
  • Zod/OpenAPI owns request and response shape.
  • Scalar can expose API docs and exploration.
  • Shell apps should call typed clients through app-local API modules or shared API clients.
  • Zustand should not hold remote data responses.

On this page