finds.dev← search

// the find

calcom/cal.diy

★ 45,386 · TypeScript · MIT · updated Jun 2026

Scheduling infrastructure for absolutely everyone.

Cal.diy is a self-hosted scheduling platform — think Calendly but one you run yourself. It's a fork of Cal.com with enterprise/commercial features stripped out and the whole codebase under MIT. Built on the T3 stack (Next.js, tRPC, Prisma, Tailwind), it handles booking pages, calendar integrations (Google, Outlook, Zoom), and meeting scheduling for individuals who want to own their data and infrastructure.

The T3 stack choice is coherent — tRPC gives you end-to-end type safety without the ceremony of REST, and Prisma migrations keep schema changes auditable. Docker Compose setup with `yarn dx` actually works: spins up Postgres with seeded test users in one command, which is rare for a project this size. ARM Docker images are published separately (the `-arm` suffix), so Raspberry Pi and Apple Silicon self-hosters aren't second-class citizens. The cal.diy fork cleanly removes the open-core trap — no license key, no feature flags guarding functionality, the whole thing is MIT.

The README opens with a WARNING that this is strictly for personal, non-production use and requires 'advanced knowledge of server administration' — that's a significant disclaimer for a 45k-star repo, and reflects that the project is community-maintained rather than Cal.com's primary concern. Build-time variables baked into the Next.js static output mean changing `NEXT_PUBLIC_WEBAPP_URL` after the fact requires a full rebuild, not a config change — painful for self-hosters who move domains. The monorepo is turborepo-based with over 200 yarn version lock files and multiple `.env` files (`.env`, `.env.appStore`) that must be kept in sync manually; setup friction is real. There's no upgrade path story beyond 'git pull, run migrations, hope for the best' — no migration guides, no changelog surfaced in the README.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →