3e06def637
- Add electron-vite + Vue 3 + TypeScript build config - Add .gitignore with legacy/ exclusion - Add AGENTS.md with architecture & dev commands - Update README.md
2.0 KiB
2.0 KiB
AGENTS.md — JRedisDesktop v2
Project identity
Fork of 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
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.tsdefines 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.jsonreferencestsconfig.node.json(main + preload) andtsconfig.web.json(renderer) - Node target includes
src/main/**/*,src/preload/**/*,electron.vite.config.ts - Web target includes
src/renderer/**/* @rendereralias resolves tosrc/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.