Skip to main content

Deploy to Vercel

DevDocify deploys to Vercel as a static Docusaurus site. This guide covers project import, build settings, preview deployments, CI quality gates, and optional production search updates.

Prerequisites

  • Your project is in a GitHub repository.
  • You have a Vercel account.
  • Dependencies install successfully with npm install --legacy-peer-deps.

1. Push to GitHub

Make sure your project is committed and pushed:

git add .
git commit -m "Initial commit"
git push origin main

2. Import the project in Vercel

  1. Log in to vercel.com.
  2. Click Add New > Project.
  3. Select your GitHub repository from the list.
  4. Click Import.

3. Configure build settings

Use the same settings as vercel.json:

SettingValue
Framework presetOther
Build commandnpm run build
Output directorybuild
Install commandnpm install --legacy-peer-deps

If you change package managers, update both Vercel project settings and vercel.json.

4. Add environment variables

Add sensitive values under Settings > Environment Variables in the Vercel dashboard or as GitHub Actions secrets.

VariableWhere to set itRequired
ALGOLIA_ADMIN_API_KEYGitHub Actions secretOnly when CI should push search index updates
ALGOLIA_APP_IDGitHub Actions secret or environment variableOptional, overrides the script default
ALGOLIA_INDEX_NAMEGitHub Actions secret or environment variableOptional, overrides devdocify

The public Algolia search-only key can live in docusaurus.config.ts. Do not commit admin keys.

5. Deploy

Click Deploy. Vercel installs dependencies, runs npm run build, and publishes the build/ directory.

After the first deployment succeeds, every push to main creates a production deployment. Every pull request gets a preview deployment at a unique URL.

CI quality gates

The GitHub Actions pipeline runs these checks before release:

JobPurpose
typecheckRuns TypeScript checks.
lintValidates includes and variables in the docs tree.
validate-assistantValidates assistant safety and quality policy.
buildBuilds the Docusaurus site and uploads the build artifact.
lighthouseRuns Lighthouse CI against the built site.
health-checkProbes configured API playground endpoints.

Pushes to main also run Docker image publishing, staging deploy, and the optional Algolia index push. Pull requests skip those push-only jobs.

RBAC publish gate

rbac-check.yml runs separately on pushes to main. It checks whether the GitHub actor has content.publish in rbac.config.json.

If rbac.config.json is absent, the workflow exits successfully and logs that no real config is present. The example config is not used for enforcement.

Preview deployments

Use preview deployments to:

  • Confirm the build passes before merging.
  • Check that new routes resolve correctly.
  • Review content and UI changes in a real browser.
  • Verify search, API playgrounds, and assistant UI behavior before production.

Run this command locally before opening a pull request:

npm run build

For link-specific validation, run:

npm run lint-content

Custom domain

To attach a custom domain:

  1. Go to Settings > Domains in your Vercel project.
  2. Enter your domain and follow the DNS configuration instructions.
  3. Vercel provisions a TLS certificate automatically.