Self-hosted scheduling application with repository-local Claude development context · Established large community repository, but the supplied README designates Cal.diy for personal, non-production use.

calcom/cal.diy

MIT-licensed, community-maintained self-hosted scheduling platform forked from Cal.com with commercial and enterprise code removed; it includes a Next.js web app, NestJS API v2, PostgreSQL/Prisma data layer, booking embeds, calendar and conferencing integrations, Docker deployment materials, and repository-local spec and engineering-rule documents intended to guide Claude during development, but no distributable Claude Code plugin, skill, hook, MCP server, or command is evidenced.

schedulingcalendar infrastructureself-hostingweb applicationsbooking embedsAPI developmentdeveloper toolingAI-assisted software development
Routing score
80.0
Readiness
Usable for advanced self-hosters and contributors; explicitly not recommended by its README for production or commercial deployment.
License
MIT
Maintenance
active
Components
20
Revision
0

Selection

Select when

  • You want to self-host a personal scheduling and booking application.
  • You require an MIT-licensed Cal.com-derived codebase without the stated enterprise layer.
  • You can operate Node.js, PostgreSQL, secrets, OAuth credentials, networking, backups, and upgrades.
  • You need inline, modal, or floating-button booking embeds.
  • You want repository-local specs and machine-readable rules to guide Claude-assisted development.
  • You are evaluating or developing integrations with documented calendar, conferencing, or CRM providers.
  • You accept the project's explicit personal and non-production positioning.

Boundaries

Avoid when

  • You need a vendor-managed scheduling service.
  • You need production or enterprise readiness endorsed by this repository.
  • You require teams, organizations, workflows, insights, SSO, SAML, or other removed enterprise features.
  • You lack the expertise or capacity to secure and maintain a public web application and PostgreSQL database.
  • You need a ready-made Claude Code plugin, skill, hook, MCP server, or scheduling tool surface.
  • You need a simple low-resource installation with few external dependencies.
  • You cannot safely manage OAuth secrets, encryption keys, user data, and third-party integration credentials.

Strengths

Capabilities

Provides a community-maintained scheduling and booking web application derived from Cal.com.Removes the listed enterprise and commercial features and states that the remaining codebase is MIT-licensed.Supports self-hosting without a Cal.com account or license key according to the root README.Uses Next.js, React, tRPC, Tailwind CSS, Prisma, PostgreSQL, and Daily.co in the documented stack.Includes a NestJS API v2 with unit, end-to-end, and coverage test workflows.Offers Docker images and Docker Compose configurations for the application, PostgreSQL, and Prisma Studio.Documents source builds and deployments through Railway, Northflank, Vercel, Render, and Elestio.Provides calendar integration setup for Google, Microsoft 365, Zoho Calendar, and other documented providers.Provides conferencing integration setup for Zoom, Daily, and Webex.Provides CRM or business-system integration setup for HubSpot, ZohoCRM, Zoho Bigin, Pipedrive, and Basecamp.Includes optional Unkey-backed rate limiting.Provides vanilla-JavaScript booking embeds in inline, modal, and floating-button forms.Supports embed prefill, namespaced events, queued instructions, query forwarding, and parent-iframe messaging.Implements documented preload and prerender flows to reduce perceived booking-modal latency.Includes Playwright end-to-end testing, Jest tests, Checkly tests, and MailHog-based email testing workflows.Provides spec-first feature folders for designs, progress tracking, decisions, reusable prompts, and generated documentation.Documents that Claude reads feature specs and feature-local CLAUDE.md files during repository development.Supplies modular machine-readable engineering rules covering architecture, quality, data, APIs, performance, testing, patterns, and culture.Provides an agent documentation index that points to repository structure, command, domain-knowledge, and engineering-rule references.Supports anonymous usage telemetry configuration with a documented environment variable to disable collection.

Risk profile

Risks and limitations

  • Uncertainty: only selected first-party README files were supplied, so application code, CLAUDE.md files, AGENTS.md, rule bodies, manifests, tests, CI, authentication, authorization, encryption, telemetry, and integration implementations were not directly inspected.
  • Uncertainty: repository update and push timestamps extend into 2026 relative to this analysis context, so current activity, release state, issue counts, and adoption cannot be independently reconciled.
  • Uncertainty: the README calls the project a fork of Cal.com with all enterprise code removed, but the API v2 README still documents a placeholder license-key database setup, so the practical scope of license-key dependencies is unclear.
  • Uncertainty: Claude-oriented behavior is documented in the spec workflow, but no Claude Code version, integration test, plugin manifest, skill, hook, MCP configuration, or installation path was supplied.
  • The root warning strictly recommends personal, non-production use and directs commercial or enterprise users to Cal.com.
  • Self-hosting requires advanced server administration, PostgreSQL management, application security, secret rotation, backups, monitoring, networking, and upgrades.
  • The documented default Docker environment contains placeholder database credentials and secret values that must be replaced before exposed deployment.
  • Strict CSP is enforced only on the login page, is report-only on other SSR pages, and is not supported on SSG pages according to the README.
  • A troubleshooting option disables TLS certificate verification and is explicitly suitable only for trusted termination setups.
  • Google, Microsoft, Zoom, Daily, CRM, and other integrations rely on external providers, credentials, scopes, availability, pricing, and privacy terms.
  • Anonymous usage telemetry appears enabled unless CALCOM_TELEMETRY_DISABLED is set to 1, but the supplied files do not define collected fields, destinations, retention, or defaults in code.
  • Building, testing, and operating this large monorepo can require Docker, browser binaries, substantial memory, multiple environment files, and external services.

Operators must generate and protect NEXTAUTH_SECRET and a 32-byte CALENDSO_ENCRYPTION_KEY, secure PostgreSQL and OAuth credentials, replace documented placeholder secrets, and review public exposure. The README documents partial CSP support, optional rate limiting, and a TLS-verification bypass only for trusted SSL termination; no independent audit or full threat model was supplied.

Component inventory

20 documented components

standalone web application

Cal.diy

MIT-licensed, self-hosted community scheduling platform with enterprise features removed.

README.md
unclassified

Claude Code relationship

Repository-local specs and engineering rules are written for Claude/AI-agent use, but no plugin, skill, hook, MCP server, or installer is documented.

specs/README.md; agents/README.md; agents/rules/README.md
deployment workflow

Docker Compose stack

Runs the Cal.diy web app with optional local PostgreSQL and Prisma Studio services.

README.md
container service

Cal.diy Docker image

Prebuilt DockerHub image for self-hosting, with version-arm tags documented for ARM systems.

README.md
development workflow

Quick development environment

Starts local development dependencies and seeds several test users whose credentials are printed.

README.md
command workflow

Production web server

Builds and starts the application for a production-style run.

README.md
API service

Cal.diy API v2

Nest.js API service with watch, built, and no-Docker development modes.

apps/api/v2/README.md
JavaScript module

Embed core and snippet

Vanilla-JS embed system that creates a global Cal entry point and namespaced parent/iframe messaging.

packages/embeds/README.md
embed component

Inline booking embed

Places a booking calendar directly in page flow with optional prefilled fields and configuration.

packages/embeds/README.md
embed component

Modal booking embed

Opens a booking calendar in a modal and supports small-screen slot-view configuration.

packages/embeds/README.md
embed component

Floating booking button

Adds a positioned floating call-to-action that opens the modal booking experience.

packages/embeds/README.md
performance workflow

Embed prerendering

Prepares a hidden booking or router iframe for likely modal use and can be invoked in a namespace.

packages/embeds/README.md
library module

Email renderer

Renders named JSX email templates with template-specific properties.

packages/emails/README.md
command workflow

Prisma database workflows

Migrates or deploys schema changes, seeds users or app-store data, and opens Prisma Studio.

README.md; apps/api/v2/README.md
monitoring test workflow

Checkly checks

Runs, records, filters, and deploys repository Checkly tests.

__checks__/README.md
Claude-oriented workflow

Spec-first feature workflow

Tracks feature design, decisions, implementation progress, reusable prompts, screenshots, and public-doc promotion.

specs/README.md
integration surface

App integrations

Documents credential setup for Google Calendar/Auth, Microsoft 365 Calendar, Zoom, Daily, Basecamp, HubSpot, Webex, Zoho products, and Pipedrive.

README.md
deployment integrations

Managed deployment targets

Provides documented deployment entry points for Railway, Northflank, Vercel Pro, Render, and Elestio.

README.md

Technical profile

Requirements and configuration

Language
TypeScript is the primary GitHub language.
License
MIT according to GitHub metadata and the root README.
Application Stack
Next.js, React, tRPC, Tailwind CSS, Prisma, PostgreSQL, and Daily.co are listed.
Api
API v2 is a NestJS project.
Deployment
Docker Compose plus documented Railway, Northflank, Vercel, Render, and Elestio paths.
Runtime
Node.js >=18 and PostgreSQL >=13 are documented prerequisites.
Package Management
Yarn is recommended in the supplied README.
Testing
Jest, Playwright, Checkly, MailHog, and API test workflows are documented.
Claude Integration
Repository-local specs and CLAUDE.md files are described as context Claude reads during feature work.
Telemetry
CALCOM_TELEMETRY_DISABLED=1 is documented to disable anonymous usage data collection.
Repository Scale
GitHub metadata reports 48,530 stars, 15,156 forks, 1,411 open issues, and a repository size of 1,156,746 KB.
Architecture
The repository is a multi-package monorepo with web, API, Prisma, email, embed, agent-documentation, and specification areas.

Classification

How it enters the stack

Standalone ApplicationContext Injection

Evidence: Cal.diy runs as a self-hosted web application, while repository specs, feature-local CLAUDE.md files, and machine-readable rules provide development context Claude can read. No installable Claude extension or tool surface is evidenced. Inference: it runs alongside Claude Code, and full application setup is high effort.

Runs Alongside · high setup effort · high confidence · automated

Evidence and risk

Primary sources

first_party_fileREADME.mdhttps://github.com/calcom/cal.diy/blob/main/README.md
first_party_filespecs/README.mdhttps://github.com/calcom/cal.diy/blob/main/specs/README.md
first_party_fileagents/README.mdhttps://github.com/calcom/cal.diy/blob/main/agents/README.md
first_party_filedeploy/README.mdhttps://github.com/calcom/cal.diy/blob/main/deploy/README.md
first_party_file.changeset/README.mdhttps://github.com/calcom/cal.diy/blob/main/.changeset/README.md
first_party_file__checks__/README.mdhttps://github.com/calcom/cal.diy/blob/main/__checks__/README.md

Routing context

Conflicts, complements, and synergies

No catalog relationships have been documented yet.