Skip to content
flexcal Documentation

Requirements

flexcal is a fully open-source, self-hosted scheduling platform, forked from cal.com and licensed under the AGPLv3. There is no license key and no vendor account: every feature that ships works out of the box. There is also no hosted version, so running it is on you.

Teams, organizations, workflows, the Platform API v2, SAML single sign-on, paid bookings and subscription billing are not part of this codebase. Google and Microsoft (Entra ID) single sign-on are supported, alongside password and magic-link login. See the open issues for what is being worked on.

flexcal is a Next.js application backed by PostgreSQL.

Component Version Notes
Node.js >= 20 Runtime for the web app
Bun >= 1.3.14 The only supported package manager, pinned via packageManager in package.json
PostgreSQL >= 13 Any managed or self-run instance works
Git any recent Needed to clone the repository

Serving flexcal is modest: 1 vCPU and 2 GB of RAM is enough for a small instance.

Building from source is much heavier. The Next.js build wants a large Node heap:

Terminal window
export NODE_OPTIONS="--max-old-space-size=16384"

Adjust the number to the RAM you are willing to give the build. The Docker build uses the MAX_OLD_SPACE_SIZE build argument for the same purpose (default 6144).

  • Docker — a published multi-arch image plus a Compose file with Postgres.
  • Helm — the chart for running flexcal on Kubernetes.