开源日历 Cal.com 项目:自定义你的时间管理(Github项目分享)
共 1797字,需浏览 4分钟
·
2024-07-17 08:00
如果你是日常使用Calendly等时间安排工具的人,那么你一定知道这些工具确实方便了我们的生活,不管是商务会议、瑜伽课程还是家庭通话。然而,这些工具在控制和自定义方面往往有所局限。这时候,Cal.com应运而生。
什么是Cal.com?
Cal.com是一个开源的时间安排工具,被誉为Calendly的继任者。它最大的特点就是完全开源,你可以完全掌控自己的数据、工作流程和外观设计。不管是自托管还是使用官方提供的托管服务,Cal.com都能满足你的需求,并且支持白标和自定义域名。通过API驱动,你可以轻松将其部署到自己的域名上,实现对事件和数据的全面控制。
https://github.com/calcom/cal.com
技术栈
Cal.com的开发使用了以下技术:
-
Next.js:一个基于React的服务端渲染框架。 -
tRPC:一个用于构建类型安全API的框架。 -
React.js:一个用于构建用户界面的JavaScript库。 -
Tailwind CSS:一个实用性优先的CSS框架。 -
Prisma.io:一个现代化的ORM工具。 -
Daily.co:一个视频通话API。
快速上手
想要在本地运行Cal.com,只需按照以下步骤操作:
-
前置条件:
-
Node.js (版本 >= 18.x) -
PostgreSQL (版本 >= 13.x) -
Yarn(推荐) -
克隆代码库:
git clone https://github.com/calcom/cal.com.git
cd cal.com -
安装依赖:
yarn
-
设置环境变量:将
.env.example
文件复制一份并重命名为.env
,然后使用如下命令生成密钥并添加到.env
文件中:openssl rand -base64 32
-
设置Node版本:如果你的Node版本不满足项目要求,可以使用
nvm
(Node版本管理器)安装和切换到所需版本:nvm install
nvm use -
启动开发环境:
yarn dev
相关提示
在.env
文件中添加以下内容以启用调试日志:
NEXT_PUBLIC_DEBUG=1
配置数据库
你可以选择在本地创建PostgreSQL数据库或者使用Railway、Render等服务来托管数据库。配置好数据库后,在开发环境中运行以下命令以设置数据库:
yarn workspace @calcom/prisma db-migrate
创建用户
可以通过Prisma Studio手动添加用户,或者运行以下命令来填充测试用户数据:
yarn db-seed
结语
作为一个开源项目,Cal.com不仅提供了强大的功能,还允许你完全掌控自己的数据和工作流程。如果你对时间安排工具有更多的自定义需求,不妨试试Cal.com,享受开源带来的自由与便利。
欢迎大家在评论区分享你们的使用体验和心得!