Cal.diy:完全开源的自托管日程管理平台
文章目录
- Cal.diy:完全开源的自托管日程管理平台
Cal.diy:完全开源的自托管日程管理平台
Cal.com 获得了 45k+ 的 Star,是一款开源的日程管理工具。
Cal.diy 是 Cal.com 的社区分支版本,移除了所有企业版和商业代码,整个代码库采用 MIT 许可证。
Cal.com 本身采用"Open Core"模式,核心功能开源,但高级功能如团队管理、组织架构、工作流、SSO/SAML 等需要商业授权。Cal.diy 移除了这些限制,用户无需许可证密钥即可使用全部功能。
Cal.diy 面向希望完全掌控日程管理基础设施的个人用户和自托管场景。
主要特性:
- 完全移除企业功能:团队、组织、洞察、工作流、SSO/SAML 等仅限企业版的功能已全部移除
- 无需许可证密钥:所有功能开箱即用,不需要 Cal.com 账户或授权
- 100% 开源:整个代码库采用 MIT 许可证,不存在"Open Core"的代码分离
- 社区维护:欢迎贡献,所有代码直接进入此项目
Cal.diy 采用的技术栈包括 Next.js、tRPC、React.js、Tailwind CSS、Prisma.io 和 Daily.co,支持通过 Docker、Docker Compose 或源码构建进行部署。
项目提供了详细的部署文档,支持多种部署方式,包括 Railway、Northflank、Vercel(需要 Pro Plan)、Render 和 Elestio。
在集成方面,Cal.diy 支持连接 Google Calendar、Microsoft Graph、Zoom、Daily.co、Basecamp、HubSpot、Webex、ZohoCRM 等外部服务,用户可以根据需要配置相应的 OAuth 凭证。
项目使用 PostgreSQL 作为数据库,要求 Node.js 18.x 以上版本,推荐使用 Yarn 作为包管理器。开发环境可以通过yarn dx命令快速启动,该命令会自动配置本地 PostgreSQL 实例和测试用户。
对于希望自行构建 Docker 镜像的用户,项目提供了完整的构建文档,包括环境变量配置、数据库设置和构建步骤。镜像也已发布到 Docker Hub,可以直接拉取使用。
Cal.diy 是一个社区驱动的项目,欢迎各种形式的贡献,包括修复文档错误、改进功能或提交代码。项目维护者为新贡献者标记了适合入门的 issue,帮助新人快速参与项目。
项目提供了完善的文档,包括环境变量配置说明、数据库设置指南、Docker 部署步骤以及各种集成服务的配置方法。对于新手用户,可以通过yarn dx命令快速启动开发环境,该命令会自动配置本地 PostgreSQL 数据库并创建测试账户。
Cal.diy 支持多种部署方式,用户可以根据自己的技术栈选择最合适的方案。无论是使用 Docker 容器化部署,还是通过 Railway、Render 等云平台一键部署,都有详细的文档指导。
在安全性方面,项目支持内容安全策略(CSP)配置,可以增强应用的安全性。同时支持通过 Unkey 进行速率限制,防止恶意请求。
Cal.diy 的社区活跃,定期发布更新,修复已知问题并添加新功能。项目采用标准的 Git 工作流,通过 Pull Request 进行代码审查,确保代码质量。
对于想要参与开源项目的开发者来说,Cal.diy 是一个很好的起点。项目代码结构清晰,文档完善,社区友好,适合有一定 Web 开发经验的开发者学习和贡献。
目代码结构清晰,文档完善,社区友好,适合有一定 Web 开发经验的开发者学习和贡献。
