Cal.com — Open-Source Scheduling Infrastructure
The open Calendly alternative. Embed scheduling in any app with APIs and webhooks. Self-hostable. 40K+ GitHub stars.
What it is
Cal.com is an open-source scheduling infrastructure platform that provides booking pages, calendar integrations, and scheduling APIs. It works as a self-hostable alternative to Calendly with features for teams, round-robin assignments, and webhook-driven workflows. The platform supports Google Calendar, Outlook, and CalDAV integrations.
It targets developers who want to embed scheduling into their applications, teams who need self-hosted scheduling for privacy, and businesses building appointment-based products.
How it saves time or tokens
Cal.com provides a complete scheduling backend via API. Instead of building calendar logic, time zone handling, conflict detection, and email notifications from scratch, you embed Cal.com and configure it. For AI applications, you can automate scheduling -- an AI agent can create booking links, check availability, and schedule meetings through the API without manual intervention.
How to use
- Self-host with Docker:
git clone https://github.com/calcom/cal.com.git
cd cal.com
npm install
npx turbo dev
- Or use Docker:
docker pull calcom/cal.com
docker run -p 3000:3000 calcom/cal.com
- Embed in your application:
<!-- Embed a booking page -->
<iframe src="https://cal.com/your-username/30min" width="100%" height="700"></iframe>
<!-- Or use the JavaScript embed -->
<script>(function (C, A, L) { /* cal.com embed script */ })(window, 'https://cal.com', 'init');</script>
Example
// Use Cal.com API to create a booking programmatically
const response = await fetch('https://api.cal.com/v1/bookings', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer cal_your_api_key'
},
body: JSON.stringify({
eventTypeId: 1,
start: '2026-04-20T10:00:00Z',
end: '2026-04-20T10:30:00Z',
responses: {
name: 'AI Agent Booking',
email: 'user@example.com'
}
})
});
const booking = await response.json();
console.log('Booking created:', booking.uid);
Related on TokRepo
- AI tools for automation -- Workflow automation tools
- AI tools for self-hosted -- Self-hostable infrastructure
Common pitfalls
- Self-hosting requires PostgreSQL and proper email configuration for booking notifications. Without email, users will not receive confirmation emails.
- Time zone handling is complex. Ensure your integration sends UTC timestamps and lets Cal.com handle time zone conversion for the user.
- The API has rate limits. For high-volume booking scenarios, cache availability data and batch requests rather than querying per-user.
Frequently Asked Questions
Cal.com is open-source and self-hostable, while Calendly is a closed-source SaaS product. Cal.com offers more flexibility through APIs and webhooks, and your data stays on your infrastructure. Calendly has a more polished consumer experience. Choose Cal.com for developer-facing integrations and self-hosting requirements.
Yes. Cal.com provides embeddable booking widgets as iframes, JavaScript snippets, and React components. You can customize the appearance to match your brand. The embed handles the full booking flow including calendar selection, time zone detection, and confirmation.
Yes. Cal.com supports round-robin scheduling, collective scheduling (find a time when all team members are free), and managed event types for teams. Administrators can configure routing rules and assign team members to event types.
Yes. Cal.com provides REST APIs for checking availability, creating bookings, and managing event types. An AI agent can programmatically find available time slots and schedule meetings without human intervention. Webhooks notify your system when bookings are created or cancelled.
The open-source version is free for self-hosting with no feature limitations. Cal.com also offers a hosted cloud version with free and paid tiers. The free tier includes basic scheduling features, while paid tiers add team features, custom domains, and priority support.
Citations (3)
- Cal.com GitHub Repository— Cal.com is an open-source scheduling infrastructure platform
- Cal.com Documentation— Cal.com provides APIs, webhooks, and embeddable booking widgets
- Cal.com Blog— Open-source scheduling enables self-hosted appointment management
Related on TokRepo
Source & Thanks
Discussion
Related Assets
HumHub — Open-Source Enterprise Social Network
A flexible, open-source social networking platform built on Yii2 for creating private communities, intranets, and collaboration spaces within organizations.
Dolibarr — Open-Source ERP & CRM for Business Management
A modular open-source ERP and CRM application written in PHP for managing contacts, invoices, orders, inventory, accounting, and more from a single web interface.
PrestaShop — Open-Source PHP E-Commerce Platform
A widely adopted open-source e-commerce platform written in PHP with a rich module marketplace, multi-language support, and a strong European user base.