Website deployment
The documentation and renderer-only Playground live in apps/website. The app
uses Fumadocs for navigation, MDX rendering, table of contents, and static
FlexSearch. Next.js exports the complete site to apps/website/out; there is no
Node.js server in production.
Local validation
Run the same primary gates used by deployment:
pnpm install --frozen-lockfile
pnpm website:typecheck
RENDERIFY_SITE_BASE_PATH=renderify pnpm website:buildRENDERIFY_SITE_BASE_PATH is a build-time value. For the repository project
site at https://webllm.github.io/renderify/, it must be renderify so static
assets, search, documentation links, and the Playground runtime all resolve
under /renderify.
For local root-path preview, omit the variable:
pnpm website:build
pnpm website:previewGitHub Pages setup
The repository administrator performs one one-time setting:
- Open Settings → Pages.
- Under Build and deployment, choose GitHub Actions as the source.
After that, pushes that change website, documentation, workflow, or relevant
runtime files trigger .github/workflows/pages.yml. The workflow builds with
the repository base path, uploads apps/website/out, and deploys through the
protected github-pages environment.
The workflow requests only the permissions required by GitHub Pages:
contents: read;pages: write;id-token: write.
GitHub serializes deployments through the workflow concurrency group so a newer push can replace an older in-progress site build.
Verify a deployment
Check these routes after the Pages job completes:
/renderify/— landing page;/renderify/docs/— documentation tree and static search;/renderify/playground/— isolated editor and renderer;/renderify/api/search— static FlexSearch data;/renderify/sitemap.xmland/renderify/robots.txt— crawler metadata.
For the Playground, run both bundled examples and verify more than visible HTML:
- Material UI elements have computed component styles.
- Adding, toggling, filtering, and deleting a Todo changes the UI.
- RuntimePlan counter events update
{{state.count}}. - Browser network logs contain module CDN requests but no model-provider API.
Custom domain
If the site moves to a root custom domain, build with an empty base path and add
the domain to the Pages configuration. Keep siteConfig.productionUrl, sitemap,
Open Graph metadata, and the workflow build variable aligned with that domain.