[!重要] Eidos 设定了一个宏大的目标,但目前还处于早期阶段,还有很多工作要做。您可以尝试使用它,但我不建议将其用于生产目的。如果您对该项目感兴趣,建议您关注其开发进度。如果您有提前访问密钥,Eidos 正式发布时您会收到邮件通知。
功能
-
所有内容都在浏览器中运行。它是一个纯粹的 PWA,无需网络服务器。
-
离线支持:在没有互联网连接的情况下访问您的数据。数据存储在本地,性能极快。
-
AI 功能:与 LLM 深度集成,提供 AI 驱动的功能。在 Eidos 中翻译、总结和与您的数据互动。AI 即使离线也能工作。
-
可扩展性:根据您的需求定制 Eidos。
- Prompt:使用 Prompt 扩展加速您的工作流程。无需编程。
- UDF:使用 JavaScript 自定义公式函数。
- Script:使用 TypeScript/JavaScript 创建强大的数据处理逻辑。
- App:使用任何首选框架构建您自己的应用程序。(概念验证)
- Block:使用自定义区块扩展文档。(概念验证)
- Field:使用自定义字段扩展表格。(即将推出)
-
对开发者友好:
- API 和 SDK
- Sqlite 标准化:Eidos 中的每个表都是一个 SQLite 表。
要求
目前,Eidos 仅支持基于 Chromium 的最新浏览器版本,如 Chrome、Edge、Arc 和 Brave。建议版本为 122 以上。
Safari、Firefox 和其他浏览器尚未测试。
原因?
Eidos 基于 sqlite-wasm 构建,工作时需要浏览器支持 OPFS[1]。
将数据存储在本地文件夹中是一种确保更好数据安全性的良好做法。使用 Chrome 122 及其更高版本,我们可以获得本地文件夹的持久权限[2],因此我们不必每次打开 Web 应用程序时都选择文件夹。
- https://sqlite.org/wasm/doc/trunk/persistence.md#opfs
- https://developer.chrome.com/blog/persistent-permissions-for-the-file-system-access-api
如何开发
- 克隆仓库
git clone git@github.com:mayneyao/eidos.git
- 运行
pnpm install
安装依赖项 - 运行
pnpm build
(只需执行一次) - 运行
pnpm dev
- 您现在可以在浏览器中通过 http://localhost:5173 访问应用程序
生成 SDK 类型
pnpm gen-types
如何部署您自己的版本
路线图
https://github.com/users/mayneyao/projects/5
- 发布服务:将您的数据发布到网络。
- 基于 CRDT 的点对点同步:本地优先,但不限于本地。跨设备同步您的数据。
致谢
Eidos 基于以下开源项目:
- sqlite-wasm - 在浏览器中运行 SQLite
- shadcn-ui - UI 组件
- glide-data-grid - 高性能表格
- lexical - 文档编辑器
- web-llm - 在浏览器中运行 LLM
- teable & apitable - 教我如何构建类似 Airtable 的表格。
许可证
本项目根据 AGPL 许可证条款授权。