stack/docs-mintlify
Bilal Godil 6a01e2507a fix(rde): graceful config load errors + lightweight /config import path
The local dashboard evaluates a project's hexclave.config.ts in a plain Node
context via jiti. When a config imported a value (e.g. defineStackConfig) from a
framework package like @stackframe/stack / @hexclave/next, jiti executed the
whole SDK (React, server-only, Next internals) and threw, surfacing only as
"Failed to register development environment session (500)".

- Catch jiti load failures in readConfigFile and rethrow a helpful message that
  points at the lightweight import path.
- Add a side-effect-free `./config` subpath to the framework packages
  (@hexclave/{js,next,react,tanstack-start}/config) that re-exports
  defineHexclaveConfig/defineStackConfig + the HexclaveConfig type from
  @hexclave/shared/config, with no framework runtime. Users directly depend on
  these packages, so the subpath resolves under pnpm strict mode (unlike the
  transitive @hexclave/shared/config).
- Point the setup prompt, hand-written docs (docs-mintlify), and the renderer
  that auto-writes config files at the new `<pkg>/config` path. Legacy
  @stackframe/* packages predate the subpath, so they keep their root import.

Existing config files that import from a package root are upgraded to the
/config path on their next dashboard/CLI sync.
2026-06-04 15:05:59 -07:00
..
api feat(hexclave): PR 5 — internal symbol/path/package renames + brand strings (#1547) 2026-06-03 18:57:09 -07:00
guides fix(rde): graceful config load errors + lightweight /config import path 2026-06-04 15:05:59 -07:00
images Python & REST API setup instructions 2026-06-03 17:12:18 -07:00
openapi [Fix] [Docs]: Exclude Unavailable Routes from API Reference (#1550) 2026-06-03 19:37:06 -07:00
sdk feat(hexclave): PR 5 — internal symbol/path/package renames + brand strings (#1547) 2026-06-03 18:57:09 -07:00
snippets fix(rde): graceful config load errors + lightweight /config import path 2026-06-04 15:05:59 -07:00
.gitignore New setup (#1413) 2026-05-06 12:03:06 -07:00
apps-sidebar-filter.js Update docs apps filter field based on theme 2026-05-07 11:08:39 -07:00
code-language-labels.js Update User Fundamentals 2026-05-22 16:28:43 -07:00
docs.json feat(hexclave): PR 5 — internal symbol/path/package renames + brand strings (#1547) 2026-06-03 18:57:09 -07:00
index.mdx feat(hexclave): PR 5 — internal symbol/path/package renames + brand strings (#1547) 2026-06-03 18:57:09 -07:00
llms-full.txt fix(rde): graceful config load errors + lightweight /config import path 2026-06-04 15:05:59 -07:00
migration.mdx feat(oauth): per-provider customCallbackUrl for redirect_uri (#1512) 2026-05-28 12:28:38 -07:00
package.json chore: update package versions 2026-06-04 00:19:36 +00:00
README.md feat(hexclave): PR 3 — native @hexclave/* source rename + delete dual-publish wiring (#1482) 2026-05-29 15:21:59 -07:00
style.css Fix docs sidebar icons 2026-05-25 10:59:34 -07:00

docs-mintlify

How to run the Mintlify docs preview locally from this repository.

Prerequisites

  • Node.js >=20.17.0

  • pnpm

  • Repository dependencies installed (pnpm install from repo root)

  • OpenAPI specs in openapi/ are committed to git. Hosted Mintlify cannot run monorepo codegen on deploy, so these files must be present in the repo for production docs.

    When you change API route OpenAPI metadata, regenerate and commit the four specs from the repo root:

    pnpm run --filter @hexclave/backend codegen-docs
    git add docs-mintlify/openapi/
    

    That writes client.json, server.json, admin.json, and webhooks.json into docs-mintlify/openapi/ (and into docs/openapi/ for the legacy Fumadocs app). CI fails if pnpm codegen produces different output than what is committed (see root lint-and-build workflow).

Run locally

From the repository root:

pnpm -C docs-mintlify run dev

This starts Mintlify in docs-mintlify on http://localhost:${NEXT_PUBLIC_HEXCLAVE_PORT_PREFIX:-81}04 (for example, http://localhost:8104 with the default prefix).

From inside docs-mintlify, you can also run:

pnpm dev

Useful variants:

# Override the default port
pnpm -C docs-mintlify run dev -- --port 3333

# Skip OpenAPI processing for faster iteration
pnpm -C docs-mintlify run dev -- --disable-openapi

Search + assistant in local preview

If you want local search and the Mintlify assistant:

pnpm -C docs-mintlify run login
pnpm -C docs-mintlify run status

Then re-run pnpm -C docs-mintlify run dev.

Package scripts

From repo root:

pnpm -C docs-mintlify run lint
pnpm -C docs-mintlify run typecheck
pnpm -C docs-mintlify run build
pnpm -C docs-mintlify run clean

lint runs both mint validate and mint broken-links.