Platform boundary map
This page keeps the migration honest: which runtime owns what, which routes stay interactive, and which workspaces are already scaffolded for the next phase.
Workspaces
5
Scaffolded
2
Routes
22
Protected
5
Workspace boundaries
Current root web app
current.
Keeps the existing Vite UI running while phased migration work continues.
Keep this frontend as the active Cloudflare Pages shell while shared boundaries mature.
Future web shell
scaffoldedapps/web
Reserved for a future shell extraction if the repo outgrows the root web boundary.
Adopt only when the extraction brings more value than additional migration cost.
Worker API
currentapps/api
Owns Hono routes, middleware, Drizzle, persistence, auth, telemetry, and resilience boundaries.
Keep routes, migrations, and bootstrap data aligned as the baseline evolves.
Shared contracts
currentpackages/shared
Holds shared domain helpers plus frontend/backend request and response contracts.
Keep expanding shared contracts as new API boundaries are introduced.
Shared config
scaffoldedpackages/config
Will store shared TypeScript and tooling config once the monorepo boundary is worth activating.
Introduce base configs only when multiple workspaces genuinely need them.
Execution rule
The root frontend keeps shipping while the future workspaces are scaffolded around it. We only move the shell after the shared boundaries are stable enough to avoid a rewrite spiral.
Route migration map
Home
/
Static-first landing experience for the product shell.
Universities
/universities
Backed by catalog APIs and suitable for cache-aware listing behavior.
University Detail
/universities/:id
Candidate for future cache revalidation once detail APIs expand.
Compare
/compare
Comparison state remains interactive and user-driven.
Courses
/courses
Search and filtering now sit on top of API-backed course data.
Scholarships
/scholarships
Public funding data now follows the catalog API boundary.
Career Quiz
/career-quiz
Interactive flow with persisted quiz results through the API.
GPA Calculator
/gpa-calculator
Remains client-side within the current shell.
Community
/community
Runs through auth-aware APIs and moderation workflows.
Resources
/resources
Connected to tracked resource metadata and download events.
News
/news
Driven by CMS-style article workflows.
Stories
/stories
Powered by real editorial content rather than static-only imports.
Mentors
/mentors
Served from API-backed mentor data.
Market Demand
/market-demand
Lazy-loaded chart-heavy route backed by market insight APIs.
Cost Breakdown
/cost-breakdown
Lazy-loaded cost analysis view to keep the initial bundle lighter.
Auth
/auth
Owned by the session-backed auth boundary between web and Worker API.
Profile
/profile
User-scoped data route with protected API-backed state.
Applications
/applications
Moved from local state to authenticated persistence.
Notifications
/notifications
Consumes notification APIs and read-state mutations.
Admin
/admin
Guarded by admin-only auth checks and backed by moderation, content, FAQ, and audit APIs.
Roadmap
/roadmap
Documents execution progress inside the product shell.
FAQ
/faq
Public product FAQ backed by managed content entries.