The stack
02 · Development framework
Every Exo app is written in strict TypeScript with React, on Next.js for the web and Expo for mobile. One opinionated path.
- Dimension
- 02 · Development framework
- Platform
- Next.js + TypeScript + React
- Next.js
- Open-source (MIT) React framework for every Exo web app: routing, rendering, and APIs. Core standard · authority: EXO
- TypeScript
- Open-source (Apache-2.0) typed JavaScript, strict mode, for all application code. Core standard · authority: EXO
- React
- Open-source (MIT) UI library shared by web (Next.js) and mobile (Expo) apps. Core standard · authority: EXO
- Status
- Proposed (2026-10-02), pending team confirmation. Exo itself already runs on it; the repository contract still allows other frameworks until this is confirmed.
What it is
The framework dimension answers: what is every app written in? One answer for every app: TypeScript, React, and Next.js for the web, and the same TypeScript and React on Expo for mobile (Deploy). There is no second path: no Svelte, Remix, Vue, or Angular.
One path means code, components, agents, and people move between apps without relearning a stack, and every Exo service (exo-verify, exo-analyze, Exo Key, the design system) is built and tested for exactly one target.
Platform
- Next.js (MIT, Vercel) for web apps: routing, server rendering, and API routes. Exo runs on Next.js 16.2 and React 19.2.
- TypeScript (Apache-2.0, Microsoft), strict mode, for all application code. JavaScript application sources are disabled (already required by the repository contract).
- React (MIT, Meta) for UI, shared by web (Next.js) and mobile (Expo / React Native).
All three are open source. Developers use them directly. Exo does not wrap or rename them.
Boundary and replaceability
- The framework is a convention, not a hosted service, so there is no account, key, or bill.
- Next.js runs on any OCI host: Exo apps build to a standard container (Deploy) and do not depend on Vercel.
- Replacing the framework is a portfolio-wide migration, not a per-app choice. That is the point of an opinionated stack.
- Open change: the repository contract currently says "Application framework choice remains independent". It changes to Next.js + TypeScript + React once the team confirms this page.
Cost notes
- License cost: $0 (MIT and Apache-2.0).
- The cost of one path is the alternatives given up: a team that prefers Svelte or Remix must build outside Exo.
Status
- Live: Exo, Construct, and the portfolio web apps already use Next.js, TypeScript, and React.
- Proposed: making it mandatory for every Exo app (pending team confirmation, 2026-10-02).
Source: content/docs/stack/framework.mdx
01 · Control plane
Exo itself — the portfolio control plane for App registration, environments, releases, and evidence — with work run through Hermes agents and FluidVoice built in for voice input.
03 · Source control
Entire is the primary Git-compatible forge and keeps agent sessions with source history.