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 foresmadrider-meand/app-devlocalhost tools (seepackages/runtime/app-registry/README.md). Consumed by the shell when composingregistry.ts; must not import shell oros-appsimplementations.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. Optionalnavigationhints onAppRuntimeContextdescribe 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.appPathfor small deep links or mount TanStack Router for in-window structure, with a separate router instance per app (not the shell router). PrefercreateMemoryHistoryuntil 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.routeBaseas the app launch base. The shell may extractappPathbelow 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-spacesremains 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 insideapps/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 underProxied 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.
| App | Export subpath | Route | Runtime notes |
|---|---|---|---|
| Projects | @prox-os/os-apps/projects | /app/projects | Static project and milestone surface. |
| Dreams | @prox-os/os-apps/dreams | /app-health/dreams | Static 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-fullstack | Mock 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/health | Mock personal wellness dashboard; no medical advice, diagnosis, or health provider integration. |
| Game Records | @prox-os/os-apps/game-records | /app/game-records | Mock play-session and purchase journal for time, place, device, people, mood, spend, and memory notes. |
| Places | @prox-os/os-apps/places | /app/places | Mock visited-place timeline, map-like overview, costs, devices, companions, and wishlist. |
| Movies | @prox-os/os-apps/movies | /app/movies | Mock cinema and film journal with formats, tickets, people, events, and connector placeholders. |
| News RSS | @prox-os/os-apps/news-rss | /app/news-rss | Mock feed reader with article inbox, source management modal, AI summary badges, and information diet metrics. |
| Madrid | @prox-os/os-apps/madrid | /app/madrid | Mock 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-track | Mock portfolio and trading journal; no real quotes, broker sync, crypto custody, or investment advice. |
| AI Medium | @prox-os/os-apps/ai-medium | /app/ai-medium | Mock model-transparent publishing surface with author, model, prompt, human edits, and trust metadata. |
| Games Hub | @prox-os/os-apps/games | /app-game | Static Games direction hub with collection cards, iframe placeholder notes, and Snake launcher. |
| Snake | @prox-os/os-apps/games | /app-game/snake | Local Snake mini game prototype with keyboard controls and no score backend. |
| Tile Merge | @prox-os/os-apps/games | /app-game/tile-merge | Local 4x4 tile merge puzzle with keyboard controls, scoring, win, and game-over checks. |
| Minesweeper | @prox-os/os-apps/games | /app-game/minesweeper | Local beginner minefield with reveal, flag, timer, win, and loss states. |
| Memory Cards | @prox-os/os-apps/games | /app-game/memory-cards | Local card matching game with paired cards, moves, timer, timeout cleanup, and win state. |
| Breakout | @prox-os/os-apps/games | /app-game/breakout | Local paddle-and-bricks arcade game using a cleaned-up animation loop, score, lives, pause, and reset. |
| Pong | @prox-os/os-apps/games | /app-game/pong | Local player-versus-AI paddle rally with score target, pause, reset, and animation cleanup. |
| Falling Blocks | @prox-os/os-apps/games | /app-game/falling-blocks | Local 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-suite | Internal-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-room | Mocked data console until API reads land. |
| Data Graph | @prox-os/os-apps/data-graph | /app-user/data-graph | Mock 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-studio | Mock 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/airtable | Static Airtable-like table viewer concept; not affiliated with Airtable and does not call official APIs. |
| Assets | @prox-os/os-apps/assets | /app/assets | Static asset/resource manager. |
| Automations | @prox-os/os-apps/automations | /app-user/automations | Static actions/workflow surface. |
| System | @prox-os/os-apps/system | /app-admin/system | Reads route/app snapshots from runtime props. |
| Backend Foundation | @prox-os/os-apps/backend-foundation | /app-admin/backend | Mock-first backend resource, roadmap, console entry, and safety workspace. |
| Connector Sandbox | @prox-os/os-apps/backend-foundation | /app-admin/connector-sandbox | Mock-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-lab | Static UI state, mock scenario, contract, real API, DB, and docs readiness board. |
| Architecture | @prox-os/os-apps/architecture | /app-dev/architecture | Registry / window / settings snapshots; in-window TanStack Router (memory history) for sections. |
| Shazam | @prox-os/os-apps/shazam | /app/shazam | Static music/history surface. |
| Moments | @prox-os/os-apps/moments | /app/moments | Static timeline surface. |
| Piano | @prox-os/os-apps/piano | /app/piano | Static practice desk. |
| Music Memory | @prox-os/os-apps/music-memory | /app/music | Music listening memories, loops, places, people, sources, and AI summaries. |
| Music Player | @prox-os/os-apps/music | /app/music-player | Mock 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/home | Static 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/slidepad | Mock 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/admin | Static operations surface. |
| Admin Monitor | @prox-os/os-apps/monitor | /app-admin/monitor | Internal 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-observability | Internal-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-store | Reads 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-map | Mock 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/about | System information center for product, team roles, ecosystem map, version snapshot, and safe quick-launch links. |
| Deploy | @prox-os/os-apps/deploy | /app-os/deploy | Static deployment and app intake surface. |
| Pricing | @prox-os/os-apps/pricing | /app-os/pricing | Static concept pricing page for Space + Studio + Connector + Permission + MCP Gateway packaging and founding offers. |
| Commerce Hub | @prox-os/os-apps/pricing | /app-hub/commerce-revenue | Internal-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/tips | Static supporter, tip-tier, podium, leaderboard, and funding transparency mock; no payment processing. |
| Sponsor | @prox-os/os-apps/sponsor | /app-os/sponsor | Early funding, subscriptions, donations, supporter status, and developer-facing mock metrics; no payment processing. |
| OS Badges | @prox-os/os-apps/badges | /app-os/badges | Static reputation and badge collection surface for GitHub, early community, Pro cohort, seasonal, and legendary milestones. |
| Governance | @prox-os/os-apps/governance | /app-os/governance | Static 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-center | Static user-facing trust, safety, privacy, responsibility, and regional feature boundary center. |
| Join Us | @prox-os/os-apps/join-us | /app-os/join-us | Static community role board, founding team map, contributor paths, global readiness map, and AI agent team view. |
| Roadmap | @prox-os/os-apps/roadmap | /app-os/roadmap | Static public timeline and roadmap track map with owner roles and future incubations. |
| Product Studio Hub | @prox-os/os-apps/platform | /app-hub/product-studio | Static Product Studio Hub cockpit for briefs, waitlist signals, Product Hunt prep, growth experiments, and metrics. |
| Prox Studio | @prox-os/os-apps/platform | /app-admin/studio | Restored 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/spaces | Static prototype for public Spaces, templates, clone, remix, and gallery discovery. |
| OS Home | @prox-os/os-apps/platform | /app-os/profile | Static prototype for public profile, pinned Spaces, activity, and OS identity. |
| Developer Hub | @prox-os/os-apps/platform | /app-hub/developer-platform | Static 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/developer | Restored 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-plane | Static 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-sovereignty | Static 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/connectors | Static 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/launcher | Static 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-system | Static 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/permissions | Static prototype for permission matrix, risk review, policy templates, and audit timeline. |
| MCP Gateway | @prox-os/os-apps/platform | /app-os/mcp | Static long-term prototype for MCP resources, tools, prompts, scopes, rate limits, audit, and approval. |
| Growth | @prox-os/os-apps/platform | /app-admin/growth | Admin 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-radar | Static MVP preview for awesome GitHub repo to living OS Space. |
| RSS Preview | @prox-os/os-apps/platform | /app/rss-inbox | Static MVP preview for RSS source triage, summaries, Space routing, and digest publishing. |
| Hola | @prox-os/os-apps/hola | /app-os/hola | Welcome 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/tools | Opens development diagnostics through runtime-provided controls in development builds. |
| Route Map | @prox-os/os-apps/developer-route-map | /app-dev/route-map | Dynamic route table; filter uses in-app search state (memory router), not useState. |
| Community Admin | @prox-os/os-apps/community | /app-admin/community | Restored lightweight builder forum and community signal admin surface. |
| Community Spaces Hub | @prox-os/os-apps/community | /app-hub/community-spaces | UI-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/chatos | Uses a narrow runtime action to open Monitor. |
| AI Question Tracker | @prox-os/os-apps/ai-question-tracker | /app/ai-question-tracker | Mock AI question history and thought-index surface; no real AI platform sync. |
| Subscription Tracker | @prox-os/os-apps/subscription-tracker | /app/subscription-tracker | Mock recurring subscription ledger; no payment, bank, or email integration. |
| Market Watch | @prox-os/os-apps/market-watch | /app/market-watch | Mock watchlist and portfolio records; no real quotes, broker sync, or investment advice. |
| Notifications | @prox-os/os-apps/notifications | /app-user/notifications | Static notification inbox. |
| Timeline | @prox-os/os-apps/activity | /app-user/activity | Mock 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/wall | Mock 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/game | Mock 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/calendar | Mock calendar connector and planning surface; no OAuth or provider API. |
| Chat | @prox-os/os-apps/user-connectors | /app-connectors/chat | Mock user conversation connector surface; separate from ChatOS and no external sends. |
@prox-os/os-apps/user-connectors | /app-connectors/email | Mock email intelligence connector; no mailbox sync, OAuth, or raw email retention. | |
| Weather | @prox-os/os-apps/user-connectors | /app-connectors/weather | Mock weather context connector; no real weather API or browser geolocation. |
| Messages | @prox-os/os-apps/user-connectors | /app-connectors/messages | Mock 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/contacts | Mock people graph and identity connector; no contact provider sync or external enrichment. |
| Files | @prox-os/os-apps/user-connectors | /app-connectors/files | Mock files and drive connector; no filesystem or Drive API access. |
| Notes | @prox-os/os-apps/user-connectors | /app-connectors/notes | Mock notes and docs connector; no Notion, Docs, or local vault sync. |
| Tasks | @prox-os/os-apps/user-connectors | /app-connectors/tasks | Mock tasks and reminders connector; no external task writes. |
| Bookmarks | @prox-os/os-apps/user-connectors | /app-connectors/bookmarks | Mock reading connector; no browser bookmark or page content scraping. |
| Photos | @prox-os/os-apps/user-connectors | /app-connectors/photos | Private media connector separate from Moments; no real photo reads, uploads, or face recognition. |
| Projects | @prox-os/os-apps/user-connectors | /app-connectors/projects | Mock personal project context connector; no GitHub, Linear, or Notion provider calls. |
| Secrets | @prox-os/os-apps/user-connectors | /app-connectors/secrets | High-sensitivity model-blind secrets placeholder; no real secret storage or reveal. |
| Places | @prox-os/os-apps/user-connectors | /app-connectors/places | Mock places and location connector; no real geolocation or map provider calls. |
| Health | @prox-os/os-apps/user-connectors | /app-connectors/health | Sensitive health and fitness placeholder; no health API, medical data, diagnosis, or advice. |
| Project CRM | @prox-os/os-apps/user-connectors | /app-connectors/project-crm | Mock project relationship connector; no CRM provider calls or external sends. |
| Knowledge Graph | @prox-os/os-apps/user-connectors | /app-connectors/knowledge-graph | Personal OS graph visualization placeholder; no graph backend or cross-app raw reads. |
| Browser Activity | @prox-os/os-apps/user-connectors | /app-connectors/browser-activity | Privacy-first research activity placeholder; no browser history reads or extension. |
| User Profile | @prox-os/os-apps/user-profile | /app-user/user-profile | Static identity/profile surface. |
| Visitor | @prox-os/os-apps/visitor | /app-user/visitor | Static visitor signal console. |
| Prox Wallet | @prox-os/os-apps/user-wallet | /app-connectors/wallet | Existing mock user wallet grouped as financial connector context; no real payment system. |
| Resume | @prox-os/os-apps/resume | /app/resume | Static 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:
| App | Route | Why local |
|---|---|---|
| Keyboard shortcuts | /app-user/keyboard-shortcuts | Mirrors shell shortcut handlers and platform labels. |
| Display options | /app-user/display-options | Writes 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 optionalThe 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.