feat(cloud): add ChatGPT login and D1 sync
This commit is contained in:
1 parent
e2d873fe7f
commit
9bfdc7f417
8 files changed
+142
-19
No files matched your search
@@ -1,3 +1,4 @@
|
||||
{
|
||||
"project_id": "appgprj_6ab265f0f7dc81919b4e281000e6f7a9"
|
||||
"project_id": "appgprj_6ab265f0f7dc81919b4e281000e6f7a9",
|
||||
"d1": "DB"
|
||||
}
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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
Reference in new issue
Block a user