calcom / cal.diy
calcom / cal.diy
Warning: Use at your own risk. Cal.diy is the open source community edition of Cal.com and it is intended for users who want to self-host their own Cal.diy instance. It is strictly recommended for personal, non-production use. Please review all installation and configuration steps carefully. Self-hosting requires advanced knowledge of server administration, database management, and securing sensitive data. Proceed only if you are comfortable with these responsibilities. 警告:使用风险自负。 Cal.diy 是 Cal.com 的开源社区版本,旨在供希望自托管 Cal.diy 实例的用户使用。强烈建议仅将其用于个人、非生产环境。请仔细阅读所有安装和配置步骤。自托管需要具备服务器管理、数据库管理以及敏感数据保护方面的高级知识。仅在您能够胜任这些职责的情况下再进行操作。
Tip: For any commercial and enterprise-ready scheduling infrastructure, use Cal.com, not Cal.diy; hosted by us or get invited to on-prem enterprise access here: https://cal.com/sales 提示: 如需任何商业级或企业级调度基础设施,请使用 Cal.com 而非 Cal.diy;您可以选择由我们托管,或通过此链接获取企业内部部署访问权限:https://cal.com/sales
Cal.diy
The community-driven, open-source scheduling platform. GitHub Discussions · Issues · Contributing
Cal.diy
社区驱动的开源调度平台。GitHub Discussions · Issues · Contributing
About Cal.diy
Cal.diy is the community-driven, fully open-source scheduling platform — a fork of Cal.com with all enterprise/commercial code removed. Cal.diy is 100% MIT-licensed with no proprietary “Enterprise Edition” features. It’s designed for individuals and self-hosters who want full control over their scheduling infrastructure without any commercial dependencies.
关于 Cal.diy
Cal.diy 是一个社区驱动、完全开源的调度平台,它是 Cal.com 的一个分支,移除了所有企业级/商业代码。Cal.diy 采用 100% MIT 许可证,不包含任何专有的“企业版”功能。它专为希望完全掌控调度基础设施且不依赖任何商业服务的个人和自托管用户而设计。
What’s different from Cal.com?
- No enterprise features — Teams, Organizations, Insights, Workflows, SSO/SAML, and other EE-only features have been removed.
- No license key required — Everything works out of the box, no Cal.com account or license needed.
- 100% open source — The entire codebase is licensed under MIT, no “Open Core” split.
- Community-maintained — Contributions are welcome and go directly into this project (see CONTRIBUTING.md).
与 Cal.com 有何不同?
- 无企业功能 — 移除了团队、组织、洞察、工作流、SSO/SAML 以及其他仅限企业版的功能。
- 无需许可证密钥 — 开箱即用,无需 Cal.com 账户或许可证。
- 100% 开源 — 整个代码库均采用 MIT 许可证,不存在“核心开源”拆分。
- 社区维护 — 欢迎贡献,贡献将直接合并到本项目中(详见 CONTRIBUTING.md)。
Note: Cal.diy is a self-hosted project. There is no hosted/managed version. You run it on your own infrastructure. 注意: Cal.diy 是一个自托管项目。不存在托管/管理版本。您需要在自己的基础设施上运行它。
Built With
Next.js, tRPC, React.js, Tailwind CSS, Prisma.io, Daily.co
技术栈
Next.js, tRPC, React.js, Tailwind CSS, Prisma.io, Daily.co
Getting Started
To get a local copy up and running, please follow these simple steps.
入门指南
要运行本地副本,请按照以下简单步骤操作。
Prerequisites
Here’s what you need to run Cal.diy:
- Node.js (Version: >=18.x)
- PostgreSQL (Version: >=13.x)
- Yarn (recommended)
前置要求
运行 Cal.diy 需要以下环境:
- Node.js (版本: >=18.x)
- PostgreSQL (版本: >=13.x)
- Yarn (推荐)
If you want to enable any of the available integrations, you may want to obtain additional credentials for each one. More details on this can be found below under the integrations section. 如果您想启用任何可用的集成功能,可能需要为每一项获取额外的凭据。更多详细信息请参阅下方的集成部分。
Development Setup
- Clone the repo (or fork https://github.com/calcom/cal.diy/fork)
git clone https://github.com/calcom/cal.diy.gitIf you are on Windows, run the following command in Git Bash with admin privileges:git clone -c core.symlinks=true https://github.com/calcom/cal.diy.git - Go to the project folder:
cd cal.diy - Install packages with yarn:
yarn
开发环境设置
- 克隆仓库(或 fork https://github.com/calcom/cal.diy/fork)
git clone https://github.com/calcom/cal.diy.git如果您在 Windows 上,请以管理员权限在 Git Bash 中运行以下命令:git clone -c core.symlinks=true https://github.com/calcom/cal.diy.git - 进入项目文件夹:
cd cal.diy - 使用 yarn 安装包:
yarn
Set up your .env file
- Duplicate
.env.exampleto.env - Use
openssl rand -base64 32to generate a key and add it underNEXTAUTH_SECRETin the.envfile. - Use
openssl rand -base64 24to generate a key and add it underCALENDSO_ENCRYPTION_KEYin the.envfile.
设置 .env 文件
- 将
.env.example复制为.env - 使用
openssl rand -base64 32生成密钥,并将其添加到.env文件中的NEXTAUTH_SECRET下。 - 使用
openssl rand -base64 24生成密钥,并将其添加到.env文件中的CALENDSO_ENCRYPTION_KEY下。
Windows users: Replace the packages/prisma/.env symlink with a real copy to avoid a Prisma error (unexpected character / in variable name):
# Git Bash / WSL
rm packages/prisma/.env && cp .env packages/prisma/.env
Windows 用户: 请将 packages/prisma/.env 符号链接替换为真实副本,以避免 Prisma 错误(变量名中出现意外字符 /):
# Git Bash / WSL
rm packages/prisma/.env && cp .env packages/prisma/.env
Set up Node
If your Node version does not meet the project’s requirements as instructed by the docs, “nvm” (Node Version Manager) allows using Node at the version required by the project: nvm use
You first might need to install the specific version and then use it: nvm install && nvm use
You can install nvm from here.
设置 Node
如果您的 Node 版本不符合文档要求的项目规范,可以使用 “nvm” (Node Version Manager) 来切换到项目所需的版本:nvm use
您可能需要先安装特定版本,然后再使用它:nvm install && nvm use
您可以从此处安装 nvm。
Quick start with yarn dx
- Requires Docker and Docker Compose to be installed.
- Will start a local Postgres instance with a few test users - the credentials will be logged in the console.
yarn dx
使用 yarn dx 快速启动
- 需要安装 Docker 和 Docker Compose。
- 将启动一个本地 Postgres 实例并创建几个测试用户 - 凭据将显示在控制台中。
yarn dx
Default credentials created:
| Password | Role | |
|---|---|---|
| free@example.com | free | Free user |
| pro@example.com | pro | Pro user |
| trial@example.com | trial | Trial user |
| admin@example.com | ADMINadmin2022! | Admin user |
| onboarding@example.com | onboarding | Onboarding incomplete |
| 创建的默认凭据: | ||
| 邮箱 | 密码 | 角色 |
| :--- | :--- | :--- |
| free@example.com | free | 免费用户 |
| pro@example.com | pro | 专业用户 |
| trial@example.com | trial | 试用用户 |
| admin@example.com | ADMINadmin2022! | 管理员用户 |
| onboarding@example.com | onboarding | 入门引导未完成 |
You can use any of these credentials to sign in at http://localhost:3000
您可以使用上述任何凭据登录 http://localhost:3000。
Tip: To view the full list of seeded users and their details, run yarn db-studio and visit http://localhost:5555
提示: 要查看已植入用户的完整列表及其详细信息,请运行 yarn db-studio 并访问 http://localhost:5555。