Prox OS Internal Docs
PlatformArchitectureApps

OS Apps

Reusable app implementations now live in category packages under

Current Runtime

Reusable app implementations now live in category packages under packages/apps/*-apps. packages/apps/system-apps is reserved for OS-level apps such as App Store, App Map, System, Support, Trust Center, Governance, Notifications, ChatOS, and About. Personal, connector, developer, admin, game, founder, community, and hub apps live in their matching category packages.

apps/os-shell imports those packages through the registry and renderer bridge. It should behave like the runtime host rather than the container for every app implementation.

apps/os-shell still owns shell runtime behavior: routing, desktop grouping, iframe hosting, window manager state, shell settings, and control apps that directly affect the OS surface. Display options and Keyboard shortcuts remain local shell apps for now.

Package Ownership

  • apps/os-shell: shell chrome, desktop, OS-level routing, local window manager, shell settings, iframe host, renderer adapter, and shell-coupled control apps.
  • packages/apps/system-apps: reusable OS-level apps that can run from public app contracts, @prox-os/os-ui, and package-local code. Each app owns internal navigation; the shell must not assume how a window’s UI switches pages.
  • packages/apps/user-apps: personal work, health, media, profile, workspace, and user-owned surfaces.
  • packages/apps/user-connector-apps: mock connector shells and source-permission surfaces.
  • packages/apps/dev-apps: developer tools, route map, and development workbench surfaces.
  • packages/apps/admin-apps: admin, backend, deploy, and operations surfaces.
  • packages/apps/game-apps: browser-native games and game collection surfaces.
  • packages/apps/founder-apps: founder, pricing, roadmap, waitlist, and growth surfaces.
  • packages/apps/community-apps: community and community admin surfaces.
  • packages/apps/hub-apps: platform hub cockpit surfaces.
  • packages/apps/app-shared: shared app primitives, manifest helpers, governance objects, life-record helpers, and proxied runtime UI.
  • packages/runtime/app-registry: static iframe manifest templates for esmadrider-me and /app-dev localhost tools (see packages/runtime/app-registry/README.md). Consumed by the shell when composing registry.ts; must not import shell or os-apps implementations.
  • packages/os-surface: shared Desktop Surface Engine model for layout modes, surface kinds, capabilities, placement shapes, and v0 capability overrides. It must not import shell state or app implementations.
  • packages/contracts/app-contract: implementation-neutral manifest, window, permission, settings, keyboard, and runtime context types. Router-agnostic: no imports from @tanstack/react-router, react-router, next/router, or other concrete routers. Optional navigation hints on AppRuntimeContext describe generic intent only (navigationMode, initialPath, onNavigate, etc.), not router instances.

In-app routing (first-party vs third-party)

  • Shell owns browser URL, window open/focus/close, and route groups (/app, /app-user, /app-connectors, /app-game, /app-hub, /app-os, …).
  • First-party package apps may parse runtime.route.appPath for small deep links or mount TanStack Router for in-window structure, with a separate router instance per app (not the shell router). Prefer createMemoryHistory until an app explicitly needs browser-path deep links.
  • Third-party or migrated apps may use React Router, Wouter, Next.js navigation, a small state machine, or no router. Prefer an adapter / wrapper to mount them behind the same manifest + runtime contract; do not force an internal rewrite just to land in Próx OS.
  • Remote micro-frontends may share a React singleton when the integration model allows it; do not share a single Router instance across apps—history, base path, loaders, and URL state must stay scoped per app or host contract.
  • Manifest routing uses routing.routeBase as the app launch base. The shell may extract appPath below that base, but it does not register app-owned internal pages.

Future adapter folders (incremental; not required for every stack):

packages/apps/system-apps/src/adapters/   # optional; add per integration as needed
  react-router/
  iframe/
  ...

Route split:

  • /app/*: personal work, data, and creative apps.
  • /app-edu/*: learning, study mode, practice labs, notes, reviews, and long-term personal growth surfaces.
  • /app-health/*: health, sleep, dreams, body, mood, mindfulness, and sensitive personal tracking surfaces.
  • /app-user/*: profile, visitor, preference, notification, shortcut, display, and user-specific surfaces.
  • /app-connectors/*: personal connector apps for Alma summaries, Data Vault direction, Personal Knowledge Graph direction, and future MCP tools.
  • /app-spaces/home: Proxied Space management for third-party web apps, compatibility, install destinations, and fallback settings. /app-spaces remains a root/folder route that should normalize to home.
  • /app-spaces/slidepad: quick corner panel for Proxied Spaces and web-app rails.
  • /app-game/*: browser-native games and future sandboxed game experiments.
  • /app-shell/*: target group for shell-coupled apps that remain inside apps/os-shell.
  • /app-admin/*: internal admin operations, growth, product intelligence, real OS data readiness, users, waitlist, feedback, audit, permissions, jobs, storage, and billing.
  • /app-dev/*: local development tools, API docs, contracts, mock scenarios, Storybook, Scalar, architecture graphs, route maps, and debugging surfaces.
  • /app-iframe/*: external and standalone Proxied Apps grouped under Proxied Apps; iframe is the current implementation detail.
  • /app-os/*: reusable OS, official team, community, developer, and platform operations apps.
  • /app-hub/*: productized vertical Hub cockpits with internal modules and bundle semantics.

/app-shell is still a target split. Current registered routes use /app, /app-edu, /app-health, /app-user, /app-connectors, /app-spaces, /app-game, /app-admin, /app-dev, /app-iframe, /app-os, and /app-hub.

Migrated Apps

The historical list below tracks the app migration wave that moved implementations out of apps/os-shell/src/apps. Package ownership has since been split by category; use the package ownership section above and the shell registry imports as the current source of truth for the owning package.

AppExport subpathRouteRuntime notes
Projects@prox-os/os-apps/projects/app/projectsStatic project and milestone surface.
Dreams@prox-os/os-apps/dreams/app-health/dreamsStatic personal dream journal with entries, mood/symbol panels, and future reflective AI placeholders. /app/dreams remains a compatibility alias.
TS Fullstack@prox-os/os-apps/ts-fullstack/app-edu/ts-fullstackMock learning cockpit and Boss Mode target for TypeScript fullstack study, projects, notes, review, and AI tutor placeholders.
Health@prox-os/os-apps/health/app-health/healthMock personal wellness dashboard; no medical advice, diagnosis, or health provider integration.
Game Records@prox-os/os-apps/game-records/app/game-recordsMock play-session and purchase journal for time, place, device, people, mood, spend, and memory notes.
Places@prox-os/os-apps/places/app/placesMock visited-place timeline, map-like overview, costs, devices, companions, and wishlist.
Movies@prox-os/os-apps/movies/app/moviesMock cinema and film journal with formats, tickets, people, events, and connector placeholders.
News RSS@prox-os/os-apps/news-rss/app/news-rssMock feed reader with article inbox, source management modal, AI summary badges, and information diet metrics.
Madrid@prox-os/os-apps/madrid/app/madridMock local life hub for Madrid public services, culture, neighborhoods, admin checklist, and city memories; no legal advice.
Stock Track@prox-os/os-apps/stock-track/app/stock-trackMock portfolio and trading journal; no real quotes, broker sync, crypto custody, or investment advice.
AI Medium@prox-os/os-apps/ai-medium/app/ai-mediumMock model-transparent publishing surface with author, model, prompt, human edits, and trust metadata.
Games Hub@prox-os/os-apps/games/app-gameStatic Games direction hub with collection cards, iframe placeholder notes, and Snake launcher.
Snake@prox-os/os-apps/games/app-game/snakeLocal Snake mini game prototype with keyboard controls and no score backend.
Tile Merge@prox-os/os-apps/games/app-game/tile-mergeLocal 4x4 tile merge puzzle with keyboard controls, scoring, win, and game-over checks.
Minesweeper@prox-os/os-apps/games/app-game/minesweeperLocal beginner minefield with reveal, flag, timer, win, and loss states.
Memory Cards@prox-os/os-apps/games/app-game/memory-cardsLocal card matching game with paired cards, moves, timer, timeout cleanup, and win state.
Breakout@prox-os/os-apps/games/app-game/breakoutLocal paddle-and-bricks arcade game using a cleaned-up animation loop, score, lives, pause, and reset.
Pong@prox-os/os-apps/games/app-game/pongLocal player-versus-AI paddle rally with score target, pause, reset, and animation cleanup.
Falling Blocks@prox-os/os-apps/games/app-game/falling-blocksLocal falling block line-clear game with rotation, hard drop, score, level, next preview, and pause.
Founder Suite@prox-os/os-apps/founder-suite/app-hub/founder-suiteInternal-alpha Founder Suite Hub cockpit with P0 panels and P1/P2/P3 module map; UI-only, no billing or advice.
Data Room@prox-os/os-apps/data-room/app-user/data-roomMocked data console until API reads land.
Data Graph@prox-os/os-apps/data-graph/app-user/data-graphMock personal relationship graph for people, prompts, decisions, deployments, connectors, payments, and Spaces; distinct from Data Room and does not change /app-user/data-room.
Prompt Studio@prox-os/os-apps/prompt-studio/app-user/prompt-studioMock prompt asset manager for categories, variables, versions, quality notes, and future AI Sidebar reuse without coupling.
Airtable Viewer@prox-os/os-apps/airtable-viewer/app/airtableStatic Airtable-like table viewer concept; not affiliated with Airtable and does not call official APIs.
Assets@prox-os/os-apps/assets/app/assetsStatic asset/resource manager.
Automations@prox-os/os-apps/automations/app-user/automationsStatic actions/workflow surface.
System@prox-os/os-apps/system/app-admin/systemReads route/app snapshots from runtime props.
Backend Foundation@prox-os/os-apps/backend-foundation/app-admin/backendMock-first backend resource, roadmap, console entry, and safety workspace.
Connector Sandbox@prox-os/os-apps/backend-foundation/app-admin/connector-sandboxMock-only connector lab that separates provider debugging from the future Data API Transit Hub.
Mock Lab@prox-os/os-apps/backend-foundation/app-admin/mock-labStatic UI state, mock scenario, contract, real API, DB, and docs readiness board.
Architecture@prox-os/os-apps/architecture/app-dev/architectureRegistry / window / settings snapshots; in-window TanStack Router (memory history) for sections.
Shazam@prox-os/os-apps/shazam/app/shazamStatic music/history surface.
Moments@prox-os/os-apps/moments/app/momentsStatic timeline surface.
Piano@prox-os/os-apps/piano/app/pianoStatic practice desk.
Music Memory@prox-os/os-apps/music-memory/app/musicMusic listening memories, loops, places, people, sources, and AI summaries.
Music Player@prox-os/os-apps/music/app/music-playerMock music workspace with playlist, queue, mood radio, and shell Floating Surface mini-player behavior when minimized.
Proxied Spaces Home@prox-os/os-apps/proxied-space/app-spaces/homeStatic Proxied Space app for third-party web app catalog cards, compatibility badges, iframe/external fallback preview, settings, submissions, install destinations, and quota UI.
Slidepad@prox-os/os-apps/slidepad/app-spaces/slidepadMock quick corner app surface for Proxied Spaces, web app icon rails, and fast entry to the full Spaces home app.
Admin@prox-os/os-apps/admin/app-admin/adminStatic operations surface.
Admin Monitor@prox-os/os-apps/monitor/app-admin/monitorInternal admin monitor for route exposure, registry readiness, release follow-up, and operational notes; UI-only with no provider calls.
Ops Hub@prox-os/os-apps/monitor/app-hub/operations-observabilityInternal-alpha OS Operations & Observability Hub cockpit for environment maps, deploy readiness, quality gates, performance, analytics placeholders, incidents, runbooks, release train, and cost readiness; UI-only with no provider calls.
App Store@prox-os/os-apps/app-store/app-os/app-storeReads registry snapshot from runtime props and overlays a broader incubator catalog for apps, templates, Spaces, data sources, and AI workflows.
App Map@prox-os/os-apps/app-map/app-os/app-mapMock OS capability topology for apps, connector surfaces, dev tools, founder apps, and AI layer placeholders.
About Prox OS@prox-os/os-apps/about-prox-os/app-os/aboutSystem information center for product, team roles, ecosystem map, version snapshot, and safe quick-launch links.
Deploy@prox-os/os-apps/deploy/app-os/deployStatic deployment and app intake surface.
Pricing@prox-os/os-apps/pricing/app-os/pricingStatic concept pricing page for Space + Studio + Connector + Permission + MCP Gateway packaging and founding offers.
Commerce Hub@prox-os/os-apps/pricing/app-hub/commerce-revenueInternal-alpha Commerce & Revenue Hub for pricing strategy, checkout readiness, revenue split preview, invoice/tax readiness, and commercial metrics.
Tips@prox-os/os-apps/tips/app-os/tipsStatic supporter, tip-tier, podium, leaderboard, and funding transparency mock; no payment processing.
Sponsor@prox-os/os-apps/sponsor/app-os/sponsorEarly funding, subscriptions, donations, supporter status, and developer-facing mock metrics; no payment processing.
OS Badges@prox-os/os-apps/badges/app-os/badgesStatic reputation and badge collection surface for GitHub, early community, Pro cohort, seasonal, and legendary milestones.
Governance@prox-os/os-apps/governance/app-os/governanceStatic governance console for RFCs, ADRs, roles, AI runs, growth library items, and asset stewardship.
Trust Center@prox-os/os-apps/trust-center/app-os/trust-centerStatic user-facing trust, safety, privacy, responsibility, and regional feature boundary center.
Join Us@prox-os/os-apps/join-us/app-os/join-usStatic community role board, founding team map, contributor paths, global readiness map, and AI agent team view.
Roadmap@prox-os/os-apps/roadmap/app-os/roadmapStatic public timeline and roadmap track map with owner roles and future incubations.
Product Studio Hub@prox-os/os-apps/platform/app-hub/product-studioStatic Product Studio Hub cockpit for briefs, waitlist signals, Product Hunt prep, growth experiments, and metrics.
Prox Studio@prox-os/os-apps/platform/app-admin/studioRestored admin-facing Studio prototype for OS App, Space, dashboard, and AI context creation from sources and templates.
Space Gallery@prox-os/os-apps/platform/app-os/spacesStatic prototype for public Spaces, templates, clone, remix, and gallery discovery.
OS Home@prox-os/os-apps/platform/app-os/profileStatic prototype for public profile, pinned Spaces, activity, and OS identity.
Developer Hub@prox-os/os-apps/platform/app-hub/developer-platformStatic Developer Platform Hub cockpit for app contracts, manifests, runtime surfaces, local dev tools, Store readiness, and mock permissions.
Developer Console@prox-os/os-apps/platform/app-admin/developerRestored admin-facing developer console for app registration, manifest validation, version review, and platform API previews.
Agent Control@prox-os/os-apps/platform/app-hub/agent-control-planeStatic AI Agent Control Plane Hub cockpit for missions, context packs, tool scopes, human review, evaluation, cost awareness, and run timelines.
Personal Data@prox-os/os-apps/platform/app-hub/personal-data-sovereigntyStatic Personal Data Sovereignty Hub cockpit for data maps, sources, permissions, consent, export readiness, backup readiness, and AI context boundaries.
Connectors Hub@prox-os/os-apps/platform/app-hub/connectorsStatic App Hub cockpit for external source catalog, schema previews, sync jobs, permission scopes, recipes, and AI insight mocks.
Launcher Hub@prox-os/os-apps/platform/app-hub/launcherStatic App Hub cockpit for external app URLs, iframe fallback, web spaces, AI-generated app collection, preview wall, and desktop publish direction.
Design System Hub@prox-os/os-apps/platform/app-hub/design-systemStatic App Hub cockpit for Prox OS components, patterns, style packs, Storybook bridge, design references, and AI-readable app recipes.
Permissions@prox-os/os-apps/platform/app-os/permissionsStatic prototype for permission matrix, risk review, policy templates, and audit timeline.
MCP Gateway@prox-os/os-apps/platform/app-os/mcpStatic long-term prototype for MCP resources, tools, prompts, scopes, rate limits, audit, and approval.
Growth@prox-os/os-apps/platform/app-admin/growthAdmin cockpit for ICP, user archetypes, market slices, funnel hypotheses, starter bundles, launch tasks, and founding offers.
Radar Preview@prox-os/os-apps/platform/app/awesome-radarStatic MVP preview for awesome GitHub repo to living OS Space.
RSS Preview@prox-os/os-apps/platform/app/rss-inboxStatic MVP preview for RSS source triage, summaries, Space routing, and digest publishing.
Hola@prox-os/os-apps/hola/app-os/holaWelcome app opened after the global shell loading screen finishes; includes a Web3Forms-backed Early Access email capture configured by PUBLIC_WEB3FORMS_ACCESS_KEY.
Developer Tools@prox-os/os-apps/developer-tools/app-dev/toolsOpens development diagnostics through runtime-provided controls in development builds.
Route Map@prox-os/os-apps/developer-route-map/app-dev/route-mapDynamic route table; filter uses in-app search state (memory router), not useState.
Community Admin@prox-os/os-apps/community/app-admin/communityRestored lightweight builder forum and community signal admin surface.
Community Spaces Hub@prox-os/os-apps/community/app-hub/community-spacesUI-only community operating cockpit for spaces, namespaces, roles, contribution flow, rituals, knowledge commons, open data, and trust review.
ChatOS@prox-os/os-apps/chatos/app/chatosUses a narrow runtime action to open Monitor.
AI Question Tracker@prox-os/os-apps/ai-question-tracker/app/ai-question-trackerMock AI question history and thought-index surface; no real AI platform sync.
Subscription Tracker@prox-os/os-apps/subscription-tracker/app/subscription-trackerMock recurring subscription ledger; no payment, bank, or email integration.
Market Watch@prox-os/os-apps/market-watch/app/market-watchMock watchlist and portfolio records; no real quotes, broker sync, or investment advice.
Notifications@prox-os/os-apps/notifications/app-user/notificationsStatic notification inbox.
Timeline@prox-os/os-apps/activity/app-user/activityMock productized timeline for apps, links, sponsors, AI, music, Slidepad, visitor, system, and raw event views.
Connector Wall@prox-os/os-apps/user-connectors/app-connectors/wallMock connector status wall for provider cards, auth modes, permissions, risk, security notes, and future sync boundaries.
Game Connectors@prox-os/os-apps/game-connectors/app-connectors/gameMock unified game library connector hub for platform libraries, achievements, cloud saves, wishlists, purchases, and duplicate ownership insight.
Calendar@prox-os/os-apps/user-connectors/app-connectors/calendarMock calendar connector and planning surface; no OAuth or provider API.
Chat@prox-os/os-apps/user-connectors/app-connectors/chatMock user conversation connector surface; separate from ChatOS and no external sends.
Email@prox-os/os-apps/user-connectors/app-connectors/emailMock email intelligence connector; no mailbox sync, OAuth, or raw email retention.
Weather@prox-os/os-apps/user-connectors/app-connectors/weatherMock weather context connector; no real weather API or browser geolocation.
Messages@prox-os/os-apps/user-connectors/app-connectors/messagesMock OS-native message center for approvals, agent results, and internal messages; no websocket or external messaging provider.
Contacts@prox-os/os-apps/user-connectors/app-connectors/contactsMock people graph and identity connector; no contact provider sync or external enrichment.
Files@prox-os/os-apps/user-connectors/app-connectors/filesMock files and drive connector; no filesystem or Drive API access.
Notes@prox-os/os-apps/user-connectors/app-connectors/notesMock notes and docs connector; no Notion, Docs, or local vault sync.
Tasks@prox-os/os-apps/user-connectors/app-connectors/tasksMock tasks and reminders connector; no external task writes.
Bookmarks@prox-os/os-apps/user-connectors/app-connectors/bookmarksMock reading connector; no browser bookmark or page content scraping.
Photos@prox-os/os-apps/user-connectors/app-connectors/photosPrivate media connector separate from Moments; no real photo reads, uploads, or face recognition.
Projects@prox-os/os-apps/user-connectors/app-connectors/projectsMock personal project context connector; no GitHub, Linear, or Notion provider calls.
Secrets@prox-os/os-apps/user-connectors/app-connectors/secretsHigh-sensitivity model-blind secrets placeholder; no real secret storage or reveal.
Places@prox-os/os-apps/user-connectors/app-connectors/placesMock places and location connector; no real geolocation or map provider calls.
Health@prox-os/os-apps/user-connectors/app-connectors/healthSensitive health and fitness placeholder; no health API, medical data, diagnosis, or advice.
Project CRM@prox-os/os-apps/user-connectors/app-connectors/project-crmMock project relationship connector; no CRM provider calls or external sends.
Knowledge Graph@prox-os/os-apps/user-connectors/app-connectors/knowledge-graphPersonal OS graph visualization placeholder; no graph backend or cross-app raw reads.
Browser Activity@prox-os/os-apps/user-connectors/app-connectors/browser-activityPrivacy-first research activity placeholder; no browser history reads or extension.
User Profile@prox-os/os-apps/user-profile/app-user/user-profileStatic identity/profile surface.
Visitor@prox-os/os-apps/visitor/app-user/visitorStatic visitor signal console.
Prox Wallet@prox-os/os-apps/user-wallet/app-connectors/walletExisting mock user wallet grouped as financial connector context; no real payment system.
Resume@prox-os/os-apps/resume/app/resumeStatic profile/resume surface.

The migrated app implementation files have been removed from apps/os-shell/src/apps. New imports should use the owning category package root such as @prox-os/user-apps, @prox-os/game-apps, or @prox-os/os-apps. The shell keeps only runtime adapter files and the local shell control apps listed below.

Local Shell Apps

These apps stay inside apps/os-shell because they are tightly coupled to shell control behavior:

AppRouteWhy local
Keyboard shortcuts/app-user/keyboard-shortcutsMirrors shell shortcut handlers and platform labels.
Display options/app-user/display-optionsWrites visible shell settings and CSS-driven OS preferences immediately.

The shell also keeps packages/runtime/app-registry (iframe manifest data), iframe/IframeAppHost.tsx, AppRuntime.tsx, registry.ts, types.ts, and localAppComponents.tsx as runtime adapter code.

Package Structure

packages/apps/system-apps/
  package.json
  tsconfig.json
  src/
    index.ts
    shared/
      AppPrimitives.tsx
      defineOsAppManifest.ts
      governance*.ts
      mock-data.ts
    apps/
      core/
        app-store/
        architecture/
        chatos/
        monitor/
        ...
      growth/
        founder-suite/
        pricing/
        roadmap/
        ...
      media/
        games/
        moments/
        rss-knowledge-inbox/
        ...
      operations/
        admin/
        deploy/
        developer-tools/
        ...
      platform-suite/
        index.ts
        manifests.ts
        platformData.ts
        platformTypes.ts
        PlatformPrimitives.tsx
        <PlatformAppName>App.tsx
      user/
        user-connectors/
        user-profile/
        user-wallet/
        visitor/
      workspace/
        projects/
        ai-question-tracker/
        subscription-tracker/
        ...
      <category>/<app>/
        index.ts
        manifest.ts
        <AppName>App.tsx          # often wraps RouterProvider + app-local router
        <app>Router.tsx            # optional: createRoute tree + createRouter factory
        <app>Layout.tsx            # optional: nav + Outlet
        README.md optional

The long-term app package layout is category-based:

packages/apps/
  app-shared/
  system-apps/
  user-apps/
  user-connector-apps/
  dev-apps/
  admin-apps/
  game-apps/
  founder-apps/
  community-apps/
  hub-apps/

Every app owns its manifest next to the component. defineOsAppManifest stamps the standard runtime.kind: "os-package", routing.mode: "local-module", routing.owner: "app", and routing.preferredUrlMode: "path" metadata. The helper accepts sourcePackage so each app advertises the category package that owns it. Apps with multi-section UIs may express sections as app-owned routes (and optional search params) once they need deep links. Simple single-page apps can stay flat until they grow.

The apps/ directory is grouped by product responsibility rather than by registry route. core, operations, growth, workspace, media, platform-suite, and user are physical source folders only; app ids, manifests, route groups, App Store catalog entries, and shell renderer behavior remain registry-driven.

Some manifests use a stable product route that is shorter than the internal app id, such as os-about at /app-os/about and airtable-viewer at /app/airtable. Shell route parsing resolves these through registry routing.routeBase so the manifest remains the source of truth.

See app-routing.md for the Local Module App + Shell Wrapper route contract, including WindowInstance.route, AppRuntimeContext.route, iframe routing phases, and future external module direction.

The App Store is the exception where package-local catalog data can include roadmap and concept entries. That catalog must remain separate from the shell runtime registry so concept cards cannot imply that unregistered apps are launchable.

Styling Source Graph

The shell stylesheet must include all app category packages in its Tailwind source graph. Reusable app interiors rely on package-local utility classes, including arbitrary grid templates for split panes, dense tables, and piano-key style controls. If apps/os-shell/src/App.css stops scanning a category package, the components still render but their generated CSS disappears, so many apps collapse into single-column fallback layouts at once.

Boundaries

Category app packages may depend on:

  • @prox-os/app-contract
  • @prox-os/app-shared
  • @prox-os/os-ui
  • React peer dependencies
  • package-local components, data, hooks, and utilities

It must not import:

  • apps/os-shell/src/apps/*
  • apps/os-shell/src/shell/*
  • apps/os-shell/src/window-manager/*
  • shell-private Zustand stores, settings implementations, shortcut handlers, or window-manager adapters

If an app needs shell facts, expose a readonly runtime snapshot or a narrow app-contract action first. Do not deep-import shell internals to make a migration pass.

API And State

Current app data is still local mock data or app-local arrays. No app in packages/apps/*-apps should perform direct remote fetching without an app-local API module and cache boundary.

Remote server data should move through app-local API modules and TanStack Query. Zustand remains for browser OS local state only. Shell runtime snapshots are intentionally readonly from the package app perspective.

On this page