【导语】:Calendly 是一款主动日程安排工具,它能够让用户不再与别人分割,从而实现更多工作。比方:Calendly 的用户能够不通过安顿会议和约会的电子邮件和电话,就能够更快卖出更多的产品,并提供高质量的服务。
Calendly 这类工具发明了一种优雅而轻松的日程安排体验,使用户能够节省时间,给联系人留下深刻印象,并向忙碌的工作说再见。
明天文章介绍的开源工具 Calendso,就是 Calendly 的开源代替计划。
简介
Calendly 和其余很多工作管理工具都有各自长处,它们极大地简化了咱们的生存,帮忙咱们治理商务会议,研讨会,瑜伽课,甚至与家人打来的电话。然而,大多数工具在管制和自定义方面都十分无限,这就是 Calendso 的切入点。Calendso 提供托管服务,也能够由用户本人部署托管,能够部署在本人的域中,齐全管制事件和数据。Calendso 和 Calendly 的关系,相似于 GitLab 和 GitHub 的关系。
Calendso 具备以下性能个性:
- 反对用户个性化定制。公开的 API、Webhooks 集成、自定义主题和社区驱动:
- 开源,欢送任何人退出社区,一起构建最佳的开源通信协议:
- 用本人的形式构建。借助自定义扩大程序,能够为客户提供更好的服务。预约会议后发送 ticket,7 天后发送跟进揭示,这些都没问题。
- 没有外国的标签,Calendso 在设计上是红色标签,无论是应用托管解决方案还是自行托管。能够地将 Calendso 纳入业务中,同时依然放弃本人的品牌给客户。
- 连贯到喜爱的服务,Calendso 带有大量集成,并且可能为那里的任何平台构建自定义集成。
我的项目地址是:
https://github.com/calendso/c…
构建部署
- 环境筹备。须要先筹备好 Node.js、PostgreSQL 和 Yarn 环境。
-
部署装置:
- clone 源代码:
git clone https://github.com/calendso/calendso.git
- 装置依赖:
yarn install
- 将.env.example 复制到.env
- 配置.env 外面的变量
DATABASE_URL='postgresql://<user>:<pass>@<db-host>:<db-port>'
GOOGLE_API_CREDENTIALS='secret'
- 应用 Prisma 模式设置数据库
npx prisma db push --preview-feature
- 运行
yarn dev
- 关上 Prisma Studio 查看或批改数据库内容:
npx prisma studio
- 单击 User 增加新的用户记录。
- 填写字段(应用 BCrypt 加密明码),而后单击 Save 1 Record 创立第一个用户。
- 应用浏览器关上 http//localhost:3000,而后应用刚创立的第一位用户登录。
- 简略应用 官网提供了一个 demo 用来简略尝试应用,这里尝试创立一个备忘揭示。
- 获取 Google API 凭据的步骤:
- 关上 Google API 控制台。如果 Google Cloud 订阅中没有我的项目,则须要先创立一个我的项目,而后再持续。在“仪表板”窗格下,抉择“启用 APIS 和服务”。
- 在搜寻框中,输出日历,抉择 Google Calendar API 搜寻后果。
- 启用所选的 API。
- 接下来,从侧面窗格中抉择 OAuth 批准屏幕。抉择应用程序的应用程序类型, 后在首页上输出根本的应用程序详细信息。
- “范畴”的第二页上,抉择“增加或删除范畴”。搜寻 Calendar.event 并抉择具备作用域值 …/auth/calendar.events 的作用域,而后抉择“更新”。
- 接下来,在“测试用户”下,增加要应用的 Google 帐户。
- 当初,从侧窗格中抉择“凭据”,而后抉择“创立凭据”。抉择 OAuth 客户端 ID 选项。
- 抉择“Web 应用程序”作为“应用程序类型”。
- 在“受权的重定向 URI”下,抉择“增加 URI”,而后增加 /api/integrations/googlecalendar/callback 将 CALENDSO URL 替换为运行应用程序的 URI。
- 密钥将被创立,将被重定向回“凭据”页面。在 OAuth 2.0 客户端 ID 下抉择新生成的客户端 ID。
- 抉择下载 JSON。复制此文件的内容,并将整个 JSON 字符串粘贴到.env 文件中,作为 GOOGLE\_API\_CREDENTIALS 密钥的值。
开源前哨
日常分享热门、乏味和实用的开源我的项目。参加保护 10 万 + Star 的开源技术资源库,包含:Python、Java、C/C++、Go、JS、CSS、Node.js、PHP、.NET 等。