- The resume is a typed value. A single Zod schema in
@magic-resume/resume-schemadescribes what a resume is. The web app, the MCP server, and the AI agents all read and write that same shape. - The browser is the database. In self-hosted mode there is no server-side persistence. IndexedDB (
MagicResumeDB) is the source of truth. Cloud sync is an optional one-way push to the Core API. - Auth is feature-flagged.
NEXT_PUBLIC_APP_MODEchooses at build time whether Clerk middleware and the cloud sync layer are loaded. The same UI runs in both modes. - Edits are patches. MCP tools mutate resumes via JSON Patch (
fast-json-patch), validated against the schema before they touch storage. The web editor produces patches too — it’s the same code path.
Architecture
Architecture overview
A high-level map of the Magic Resume codebase — workspaces, data flow, and where to look when you touch X.
Magic Resume is built around four ideas that show up everywhere in the code:
