get-convex/convex-backend
GitHub: get-convex/convex-backend
Convex 是一款开源响应式数据库,让开发者用纯 TypeScript 构建强一致性的实时应用后端,支持云端托管和自托管两种部署方式。
Stars: 10601 | Forks: 616
[Convex](https://convex.dev) 是开源的响应式数据库,旨在让 Web 应用开发者(无论是人类还是 LLM)的生活更轻松。通过编写纯 TypeScript,你可以在强一致性下获取数据并执行业务逻辑。Convex 提供了数据库、编写服务端函数的空间以及客户端库。它让构建和扩展动态实时更新应用变得轻而易举。
[阅读文档了解更多](https://docs.convex.dev/understanding/)。
Convex 后端的开发由 Convex 团队主导。我们[欢迎 Bug 修复](./CONTRIBUTING.md)并[期待收到反馈](https://discord.gg/convex)。我们会将该仓库在几天内与内部开发工作保持同步。
## 快速开始
访问我们的[文档](https://docs.convex.dev/)以了解有关 Convex 的更多信息,并遵循我们的入门指南。
使用 Convex 进行构建的最简单方式是通过我们的[云平台](https://www.convex.dev/plans),该平台包含充足免费额度,让你专注于构建应用而无需担心基础设施。许多小型应用和业余项目可以完全在免费层上运行,实现零成本和零维护。
## 自托管
自托管产品包含云产品的大部分功能,包括 Dashboard 和 CLI。自托管 Convex 适用于多种工具,包括 Neon、Fly.io、Vercel、Netlify、RDS、Sqlite、Postgres 等。
你可以使用 Docker(推荐)或预构建二进制文件来自托管 Convex。请查看我们的[自托管指南](./self-hosted/README.md)获取详细说明。自托管的社区支持可在 [Discord](https://discord.gg/convex) 的 `#self-hosted` 频道获取。
## 社区与支持
- 加入我们的 [Discord 社区](https://discord.gg/convex)寻求帮助和参与讨论。
- 通过 [GitHub Issues](https://github.com/get-convex/convex-backend/issues) 报告构建和使用开源 Convex 后端时遇到的问题。
- 通过提交 Pull Request,你确认 Convex 可以根据其选择的条款使用、修改、复制和重新分发该贡献。
## 从源码构建
参见 [BUILD.md](./BUILD.md)。
## 免责声明
- 如果你选择自托管,我们建议遵循自托管指南。如果你改为从源码构建,请务必更改仓库中的默认实例密钥 (instance secret) 和管理员密钥 (admin key)。
- Convex 在 Linux 和 Mac 上经过了最充分的实战测试。在 Windows 上经验较少。如果遇到问题,请在 [Discord](https://convex.dev/community) 的 `#self-hosted` 频道留言。
- Convex 自托管构建包含一个 Beacon,以帮助 Convex 改进产品。该信息非常少、匿名且对 Convex 很有帮助,但如果你确实想禁用它,可以在后端二进制文件上设置 `--disable-beacon` 标志。Beacon 的消息会打印在日志中,仅包括:
- 你的部署的随机标识符(不在其他地方使用)
- 数据库的迁移版本
- 后端的 Git rev
- 后端的运行时间
## 仓库布局
- `crates/` 包含 Rust 代码
- 主二进制文件
- `local_backend/` 是位于 `Runtime` 之上的应用服务器。这是 Convex 云的服务边缘。
- `npm-packages/` 包含我们的公共和内部 TypeScript 包。
- 内部包
- `udf-runtime/` 为查询和变更设置用户定义函数的 JS 环境。
- `udf-tests/` 是用于测试隔离层 (isolate layer) 的函数集合。
- `system-udfs/` 包含 Convex 系统使用的函数,例如 CLI。
标签:App开发, BAAS, CMS安全, Docker, JavaScript, PostgreSQL, SQLite, TypeScript, Web应用开发, 云数据库, 可视化界面, 后端即服务, 响应式数据库, 安全插件, 安全防御评估, 实时数据库, 开源数据库, 强一致性, 数据库管理, 无服务器, 自托管, 请求拦截, 通知系统, 通知系统, 通知系统