ChaiBuilder Logo

Requirements

A ChaiBuilder site is a standard Next.js + Payload CMS application, so its requirements are the requirements of that stack plus a database, object storage for media, and outbound network access for license validation. This page lists what you need before deploying.

Runtime

Requirement Version Notes
Node.js >= 20.18.1 Node 22 LTS recommended; the reference Docker image uses node:22-alpine
pnpm 9, 10, or 11 The scaffolder defaults to pnpm; npm and yarn also work
Next.js 16 (bundled) Installed by the starter; you don't manage this separately
Payload CMS 3.x (bundled) Installed by the starter

The build step compiles the full builder and Tailwind pipeline, which is memory-hungry. The starter's build script already raises the Node heap limit (NODE_OPTIONS=--max-old-space-size=8000), so make sure your build environment has enough memory - CI runners or build containers with less than 4 GB may fail with out-of-memory errors.

Database

You need one database. The scaffolder sets this up for you:

  • SQLite - a local file (file:./local.db) or a remote libSQL / Turso database. Zero-config way to start; the local file can be imported into Turso later.
  • Postgres - any Postgres 14+ service (Neon, Supabase, RDS, self-hosted). Recommended for production and required for multi-instance deployments, since a local SQLite file cannot be shared across serverless instances.

Connection details, pooling, and migrations are covered in Database Setup.

Object storage (required for media)

Image and file uploads do not survive production deploys without object storage. Any S3-compatible store works - AWS S3, Cloudflare R2, MinIO, DigitalOcean Spaces. Set this up before going live: Storage Configuration.

Network access

  • Outbound HTTPS. The app validates your license (or trial) automatically in the background, so the deployment needs outbound HTTPS access. See Environment & License.
  • Outbound SMTP (optional). Password resets and transactional email use SMTP when SMTP_HOST is configured. In development a test inbox is used automatically.

Native dependencies

The starter uses sharp for image processing. Prebuilt binaries install automatically on common platforms (Linux x64/arm64, macOS, Windows); Alpine-based Docker images need libc6-compat, which the shipped Dockerfile already installs. If you build on one platform and run on another, reinstall dependencies on the target platform.

Hosting

Anything that runs Next.js server-side works: Vercel, Cloudflare, or any Node server or container platform. Static-only hosts (GitHub Pages, plain S3 websites) do not work - the builder, CMS, and rendering model all need a server runtime. Pick your target in Hosting Overview.

Checklist

Before deploying to production:

  • <input disabled="" type="checkbox"> Node 20.18.1+ available on the host (or you're on a managed platform)
  • <input disabled="" type="checkbox"> Production database provisioned and reachable
  • <input disabled="" type="checkbox"> S3-compatible bucket and credentials configured
  • <input disabled="" type="checkbox"> Environment variables set on the platform - see Environment & License
  • <input disabled="" type="checkbox"> Outbound HTTPS allowed for license validation
  • <input disabled="" type="checkbox"> SMTP configured if you need email (password resets, form notifications)

© ChaiBuilder. All rights reserved.