Web Platform overview
Verified 13 September 2026. This page describes the deployed EXEPERT web platform. It separates working production behavior from code that is present but still gated.
Status vocabulary
| Label | Meaning |
|---|---|
| Live | The hostname and described behavior are available in production. |
| Live but gated | The deployment responds, but a release flag deliberately blocks the candidate capability. |
| Disabled | Code may exist, but production configuration prevents its use. |
| Deferred | The capability is outside the current production release. |
Canonical domains and owners
| Public address | Hosting owner | Production responsibility | Status |
|---|---|---|---|
https://www.exepert.com | Vercel project exepert-landing | Public website, product pages, blog, RSS, sitemap, sign-in and CMS user interfaces | Live |
https://exepert.com | Vercel domain redirect | Permanent redirect to the www website | Live |
https://app.exepert.com | Vercel project exepert | AI Lab, Hono API, Better Auth authority, CMS service, Supabase principal-token bridge, and current documentation | Live |
https://app.exepert.com/docs | Bundled into the exepert Vercel artifact | This maintained Docusaurus documentation | Live |
https://learn.exepert.com | Cloudflare Pages project exepert-brain-learning | Public Human Brain Learning Lab with local progress, 3D anatomy, MRI comparisons, quizzes, and deterministic simulation | Live |
https://www.learn.exepert.com | Cloudflare Pages project exepert-brain-learning-www | Path- and query-preserving 308 redirect to learn.exepert.com | Live |
https://auth.exepert.com | Cloudflare Pages/Functions in front of the Supabase Edge Function brain-identity | Portable identity candidate; health, configuration, and OAuth discovery are available while sign-in/session cutover is blocked | Live but gated |
The website, AI Lab, and Learning Lab are separate deployable applications. A failure or rollback in one does not require moving either of the other two.
System context
Application responsibilities
Public website and blog
apps/landing owns www.exepert.com. It renders the marketing website and the
public blog with Next.js. Public articles are read from publish-safe Supabase
tables. The sign-in and editorial interfaces stay on this hostname, while
/api/auth/* and /api/cms/* are proxied to the API at app.exepert.com.
The apex hostname has one job: redirect to www.exepert.com. Do not attach an
application with separate content or identity behavior to the apex.
AI Lab, API, and documentation
The repository root owns app.exepert.com. Its browser application combines a
Vite/TypeScript shell, Three.js rendering, and Rust/WASM simulation. Its Vercel
Node function mounts the Hono API. That API is the active Better Auth authority,
issues short-lived Supabase principal tokens, and runs the private editorial CMS
service.
The Docusaurus application under docs-site builds separately and is copied
into the root production artifact. Its canonical origin is
https://app.exepert.com, and its current documentation routes begin with
/docs.
Human Brain Learning Lab
apps/brain-learning owns learn.exepert.com. It pre-renders the lesson shell
and loads Three.js geometry only when a learner opens the interactive viewer.
Six chapters each provide beginner, neuroscience, and AI/ML material. Guest
progress remains partitioned in device storage. WebGL failure leaves a readable
lesson and comparison fallback.
For repository layout, local commands, Vite behavior, and Cloudflare Pages emulation, see Human Brain Learning Lab development.
The public Open Brain Kit is downloaded from Hugging Face rather than stored in Supabase or Vercel. It contains approved educational geometry, labels, lessons, example outputs, and authored simulation parameters. It does not contain trained biological weights, a human-brain checkpoint, clinical diagnostic software, credentials, or private repository source.
Portable identity candidate
apps/auth-gateway and services/identity-runtime form the candidate identity
path. Cloudflare admits only an allowlisted identity surface, adds a private
gateway header, and forwards to the brain-identity Supabase Edge Function. The
Edge Function rejects direct requests that lack that header.
Production keeps IDENTITY_CUTOVER_ENABLED=false. Public configuration, health,
and OAuth discovery work; sign-in, sessions, token issuance, and identity
mutation remain on app.exepert.com. The candidate must not become authoritative
until the session-overlap and client regression gates pass.
How the applications are stitched together
Navigation flow
The website links users to the AI Lab and the Brain Learning Lab. The docs navbar links back to all three public products. Each application owns its own canonical URL, assets, deployment, and rollback.
Identity and data flow
- A browser or native client authenticates against Better Auth at
app.exepert.com/api/auth. - Better Auth stores users, accounts, sessions, verification records, OAuth state, and rate-limit state in the shared PostgreSQL database.
POST /api/supabase/tokenmaps the authenticated Better Auth user to a stable EXEPERT principal and returns a five-minute ES256 token.- Supabase RLS uses that principal as
auth.uid()for owner-scoped data. auth.exepert.commirrors this composition for a future cutover, but its mutating and session routes currently fail closed.
CMS publication flow
- Editors use
/adminonwww.exepert.com. - The landing application forwards authenticated CMS requests to
app.exepert.com/api/cms/*with the shared HttpOnly session cookie. - The Node CMS verifies membership, writes private drafts and revisions, and processes media with server-only storage credentials.
- Publishing creates immutable public article and asset projections in Supabase.
- A signed internal request revalidates affected Next.js blog paths.
- Public readers query only the public projection; private draft tables remain unavailable to browser roles.
Learning flow
The current release reads lesson and asset manifests from the static Pages
bundle, runs the regional simulator in a browser worker, and stores progress on
the device. The implemented /api/progress and /api/tutor routes remain
closed until their independent identity and tutor flags pass. If optional
inference is later unavailable or exhausted, the tutor contract returns authored
lesson guidance; it never sends the request to a paid fallback.
Deployment flow
Pull requests run repository checks before normal merge to main. Vercel builds
the root AI Lab and bundled docs as project exepert; the isolated landing
project deploys only when apps/landing changes. Brain Learning and the identity
candidate use manual GitHub Actions workflows that require an exact reviewed
commit and explicit environment gates before Cloudflare or Supabase deployment.
Current feature status
| Capability | Status | Operational meaning |
|---|---|---|
| Website, blog, RSS, sitemap | Live | Served by exepert-landing. |
| AI Lab and API | Live | Served by exepert; optional hosted integrations can degrade independently. |
Better Auth on app.exepert.com | Live | Current session and OAuth authority. |
| Editorial CMS | Live | Member-only API with public read projections. |
| Brain Learning static experience | Live | Lessons, comparison viewer, quizzes, simulation, local progress, and downloads work. |
| Brain Learning cloud progress | Disabled | /api/progress requires account identity; production learning configuration does not enable it. |
| Brain Learning AI tutor | Disabled | No Workers AI request is made; authored learning content remains available. |
auth.exepert.com health and discovery | Live | Safe probes are routed through Cloudflare to the portable Edge runtime. |
Identity cutover to auth.exepert.com | Live but gated | Non-probe traffic receives the cutover-disabled response. |
| Trained “human brain weights” | Deferred | The public kit is an educational asset and simulation release, not a trained biological model. |
Engineering entry points
- Use Runtime and API Reference for routes, versions, build commands, configuration names, data boundaries, and rollback.
- Use Service Plans and Limits for active tiers, material quotas, and zero-cost failure behavior.
- Use Integration architecture for the deeper browser/WASM, Supabase, and optional-service invariants.
- The implementation repository is 4kmal/MASTER-exe (private; access required).