Skip to content
merran
GitHubInstall

Merran documentation The project

Contribute

Merran is a TypeScript monorepo. The server, web app, browser extension, shared code, and public site live together so a behavior change can include its documentation.

Use Node 24 and the pnpm version declared in the root package.json:

Terminal window
corepack enable
pnpm install
pnpm dev

The web app runs on port 5173 and the API on port 3000. The server prints a setup code for a new local database.

From the repository root:

Terminal window
pnpm docs:dev

The terminal prints the local site address. Build and check it with:

Terminal window
pnpm --filter @merran/docs typecheck
pnpm docs:build

The site package is apps/docs. Guides live in src/content/docs; the homepage uses the supplied landing-page design with separate HTML sections, CSS, and browser interactions.

Change the server’s route schemas and examples, then regenerate its committed spec:

Terminal window
pnpm --filter @merran/server openapi

The public endpoint reference reads that file at build time. Avoid editing generated endpoint pages by hand.

The settings reference is generated from BOOT_SETTINGS and MODULE_SETTINGS. After changing a registered definition, run:

Terminal window
pnpm --filter @merran/docs settings:generate
pnpm --filter @merran/docs test
pnpm --filter @merran/docs typecheck

Commit the regenerated page with the definition change. Development startup and builds regenerate it; typecheck rejects a stale page. The generator reads TypeScript syntax without starting the server or loading deployment secrets. Internal settings are excluded. A small editorial description map in the generator qualifies provider costs and external data flow without changing generated keys, scopes, or defaults. Unsupported metadata expressions fail generation rather than silently omitting an entry.

Keep changes focused, describe their behavior and validation, and update guides affected by the change. The project plan calls for DCO sign-off and disclosure of AI-written contributions; include those details in your contribution.

Browse the source or report a bug.

© 2026 Kyle Johnson. Documentation: CC BY 4.0. Merran: AGPL-3.0-or-later.