chore: init v2 project scaffold

- Add electron-vite + Vue 3 + TypeScript build config
- Add .gitignore with legacy/ exclusion
- Add AGENTS.md with architecture & dev commands
- Update README.md
This commit is contained in:
2026-07-04 16:12:35 +08:00
parent 384acd8fc6
commit 3e06def637
8 changed files with 238 additions and 1 deletions
+63
View File
@@ -0,0 +1,63 @@
# AGENTS.md — JRedisDesktop v2
## Project identity
Fork of [AnotherRedisDesktopManager](https://github.com/qishibo/AnotherRedisDesktopManager). The legacy Vue 2 codebase lives in `legacy/` and is gitignored. Work only in the root project.
## Stack
- **Shell:** Electron 33 (`src/main/index.ts`)
- **Preload:** `src/preload/index.ts`
- **Renderer:** Vue 3 + Element Plus + Vue Router (`src/renderer/`)
- **Build:** electron-vite + Vite 6 + TypeScript 5
- **Redis client:** ioredis 5
## Commands
```bash
npm run dev # electron-vite dev (HMR, renderer on :5173)
npm run build # production build → out/
npm start # preview built app
npm run build:unpack # build + electron-builder --dir
npm run build:win # build + electron-builder --win
npm run build:mac # build + electron-builder --mac
npm run build:linux # build + electron-builder --linux
```
## Architecture
```
Electron main (src/main/index.ts)
├── Dev: loads renderer dev server (Vite HMR)
└── Prod: loads out/renderer/index.html
└── Vue 3 SPA (src/renderer/)
@renderer alias → src/renderer/src/
```
## Build config
- `electron.vite.config.ts` defines three build targets: main, preload, renderer
- Renderer dev server runs on port 5173
- Main/preload use `externalizeDepsPlugin()` to keep node_modules external
## TypeScript
- Root `tsconfig.json` references `tsconfig.node.json` (main + preload) and `tsconfig.web.json` (renderer)
- Node target includes `src/main/**/*`, `src/preload/**/*`, `electron.vite.config.ts`
- Web target includes `src/renderer/**/*`
- `@renderer` alias resolves to `src/renderer/src`
## Source layout (expected)
```
src/
├── main/ # Electron main process
├── preload/ # Preload scripts
└── renderer/ # Vue 3 app
├── index.html
└── src/
```
## Legacy
The `legacy/` directory contains the old Vue 2 + Webpack 4 codebase. It is gitignored and not part of the v2 build. See `legacy/AGENTS.md` for its documentation.