feat(cloud): add ChatGPT login and D1 sync

This commit is contained in:
Codex committed 2026-09-25 21:24:18 -05:00
1 parent e2d873fe7f
commit 9bfdc7f417
8 files changed
+142 -19

No files matched your search

+2 -1
View File
@@ -1,3 +1,4 @@
{
"project_id": "appgprj_6ab265f0f7dc81919b4e281000e6f7a9"
"project_id": "appgprj_6ab265f0f7dc81919b4e281000e6f7a9",
"d1": "DB"
}
+8 -4
View File
@@ -2,7 +2,7 @@
> Your life, running as an operating system.
一个本地优先、以桌面操作系统为交互隐喻的个人记录网站。它不是传统日记本:今天被归档、记忆沿时间线回看、重要片段进入人生博物馆。
一个以桌面操作系统为交互隐喻、支持 ChatGPT 登录和云端同步的个人记录网站。它不是传统日记本:今天被归档、记忆沿时间线回看、重要片段进入人生博物馆。
## 功能
@@ -16,10 +16,13 @@
- **Windows 式操作**:桌面端单击选择、双击打开;右键桌面或 App 图标可使用快捷菜单。
- **快捷键与草稿恢复**:`Ctrl / ⌘ + K` 打开启动器,`Ctrl / ⌘ + F` 搜索记忆,`Ctrl / ⌘ + S` 归档 Today;当天未归档文字会自动恢复。
- **移动端**:App 以全屏方式打开,保留任务栏恢复入口。
- **个人云端**:使用 ChatGPT 登录后,数据按账号隔离并同步到 SQLite 兼容的 D1 数据库。
## 数据与备份
所有内容默认保存在浏览器 `localStorage`,不会上传到服务器。请在 **System → Export Data** 定期导出 JSON 备份;导入时支持合并现有数据或完整覆盖恢复。
登录后,Life OS 会将资料同步到云端数据库;浏览器 `localStorage` 保留为本地缓存、临时草稿与迁移来源。首次登录时,现有本地记录可以迁移到云端;云端已有记录时,会优先恢复云端资料,并在本机保留迁移前副本。
请在 **System → Export Data** 定期导出 JSON 备份;导入时支持合并现有数据或完整覆盖恢复,导入后的资料也会同步。
主要存储键:
@@ -49,14 +52,15 @@ npm run validate
```text
public/index.html # 界面、样式与本地数据逻辑
public/addons.js # 窗口与辅助交互
worker/index.js # 同源 Bing 每日壁纸代理
worker/index.js # ChatGPT 登录门槛、云端数据 API 与 Bing 壁纸代理
drizzle/ # SQLite / D1 数据库迁移
scripts/build.mjs # 生成 Worker 部署产物
.openai/hosting.json # Sites 托管配置
```
## 隐私说明
Life OS 的记录只存在于当前浏览器的本地存储中。清除浏览器数据、切换浏览器或设备前,请先导出备份。
Life OS 使用 ChatGPT 的稳定用户标识隔离云端数据,不保存 ChatGPT 密码。浏览器本地缓存不作为唯一副本;仍建议定期导出 JSON 备份。
## License
+12
View File
@@ -0,0 +1,12 @@
CREATE TABLE lifeos_states (
user_id TEXT PRIMARY KEY,
profile_json TEXT NOT NULL DEFAULT '{}',
memories_json TEXT NOT NULL DEFAULT '[]',
museum_json TEXT NOT NULL DEFAULT '[]',
settings_json TEXT NOT NULL DEFAULT '{}',
system_json TEXT NOT NULL DEFAULT '{}',
updated_at TEXT NOT NULL
);
CREATE INDEX idx_lifeos_states_updated_at
ON lifeos_states(updated_at);
Loaded 3 of 8 files, more files were not shown because too many files have changed in this diff. Show more