铸渊 2026-08-08 开发,冰朔架构决策: - 知识库放桌面,不放服务器 - Forgejo 是 Git 引擎,光湖自己维护更新,不接上游 - 不部署 Forgejo 源码,只引用 MANIFEST + 离线包 架构: - Electron v35(Mac arm64)+ Vite + React 19 - 复用 guanghu-knowledge-base 前端组件 - Electron 主进程自动启动 Express + Git 引擎后端 - 数据存储:~/Library/Application Support/HoloLake Era/data/ - Forgejo 离线包(桌面)作为 Git 远程仓库对接 构建: - npx electron-builder --mac --dir → HoloLake Era.app - 签名后续用 Developer ID 补(CSC_IDENTITY_AUTO_DISCOVERY=false) 文件: - electron/main.ts(Electron 主进程:窗口+服务器+生命周期) - electron/preload.ts(IPC 安全桥梁:Forgejo 远程管理接口) - forgejo/INTEGRATION.md(Forgejo 集成声明 + 更新策略) - forgejo/MANIFEST.sha256(离线包校验清单) - forgejo/icon.icns(应用图标,来自 HoloLake Era v0.4.6) - vite.config.ts(复用知识库前端,构建到 dist/) - tsconfig.electron.json(Electron TypeScript 配置)
64 lines
1.7 KiB
JSON
64 lines
1.7 KiB
JSON
{
|
|
"name": "hololake-desktop",
|
|
"version": "0.5.0",
|
|
"description": "HoloLake Era 桌面版 — Git 驱动的知识库管理",
|
|
"main": "dist-electron/main.js",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "concurrently \"npm run dev:server\" \"npm run dev:client\"",
|
|
"dev:server": "tsx watch ../guanghu-knowledge-base/server/index.ts",
|
|
"dev:client": "vite",
|
|
"dev:electron": "electron .",
|
|
"build": "vite build && tsc -p tsconfig.electron.json",
|
|
"pack": "npm run build && electron-builder --mac --dir",
|
|
"dist": "npm run build && electron-builder --mac",
|
|
"preview": "vite preview"
|
|
},
|
|
"dependencies": {
|
|
"express": "^5.1.0",
|
|
"cors": "^2.8.5",
|
|
"simple-git": "^3.27.0",
|
|
"gray-matter": "^4.0.3",
|
|
"marked": "^15.0.0",
|
|
"diff": "^7.0.0"
|
|
},
|
|
"devDependencies": {
|
|
"@types/express": "^5.0.0",
|
|
"@types/cors": "^2.8.17",
|
|
"@types/diff": "^6.0.0",
|
|
"@types/node": "^22.0.0",
|
|
"@types/react": "^19.0.0",
|
|
"@types/react-dom": "^19.0.0",
|
|
"@vitejs/plugin-react": "^4.3.0",
|
|
"concurrently": "^9.1.0",
|
|
"electron": "^35.0.0",
|
|
"electron-builder": "^26.0.0",
|
|
"react": "^19.0.0",
|
|
"react-dom": "^19.0.0",
|
|
"tsx": "^4.19.0",
|
|
"typescript": "^5.7.0",
|
|
"vite": "^6.2.0"
|
|
},
|
|
"build": {
|
|
"appId": "com.guanghu.hololake-desktop",
|
|
"productName": "HoloLake Era",
|
|
"mac": {
|
|
"category": "public.app-category.productivity",
|
|
"icon": "forgejo/icon.icns",
|
|
"target": [
|
|
{ "target": "dmg", "arch": ["arm64"] }
|
|
]
|
|
},
|
|
"asar": false,
|
|
"files": [
|
|
"dist/**/*",
|
|
"dist-electron/**/*",
|
|
"forgejo/MANIFEST.sha256",
|
|
"!**/.DS_Store",
|
|
"!**/._*"
|
|
],
|
|
"directories": {
|
|
"output": "release"
|
|
}
|
|
}
|
|
}
|