This commit is contained in:
lincube
2026-02-14 20:13:43 +08:00
parent aa0154db25
commit 5a8fa98646
3 changed files with 301 additions and 137 deletions

View File

@@ -1,26 +1,47 @@
# desktop
# LanMontainDesktop
An Electron application with React and TypeScript
一个使用 Electron 打包的桌面应用:前端采用 Vue 3Renderer主进程内置 Elysia.js 作为本地后端服务Main
## Recommended IDE Setup
## 技术栈
- [VSCode](https://code.visualstudio.com/) + [ESLint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint) + [Prettier](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode)
- Electron + electron-vite主进程/构建/开发)
- Vue 3 + Vite + TypeScript渲染进程 UI
- Elysia.js + @elysiajs/node(主进程内的本地后端 API
## Project Setup
## 架构说明
### Install
这个项目不是传统意义上“浏览器前端 + 远程后端”的部署形态,而是:
- 主进程Electron Main负责创建窗口并启动 Elysia.jsHTTP Server 绑定到 127.0.0.1 的随机端口)。
- 预加载Preload通过 `ipcRenderer.invoke('eiysia:request', ...)` 把“类 HTTP 请求”转发到主进程里的 Elysia 路由。
- 渲染进程Vue 3 Renderer通过 `window.api.call({ method, path, body })` 调用后端接口(例如 `/apps/list``/apps/launch``/open/external`)。
## 目录结构(关键)
- `src/main/`Electron 主进程入口(创建窗口、启动 Elysia 服务)
- `src/preload/`Preload 桥接层(暴露 `window.api`
- `src/renderer/`Vue 3 渲染进程UI 与交互)
- `src/eiysia/`Elysia.js “后端”路由与启动逻辑
## 推荐 IDE
- VSCode + VolarVue Language Features+ ESLint + Prettier
## 开发与构建
### 安装
```bash
$ pnpm install
```
### Development
### 开发
```bash
$ pnpm dev
```
### Build
### 构建
```bash
# For windows