mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-05-13 17:46:02 +00:00
Adds a frontend/ directory that lives alongside the legacy web/html/ Vue 2 templates during the migration. Vite builds into ../web/dist/ so the Go binary will be able to embed the result via embed.FS once Phase 4 starts moving real pages over. - package.json pins Vue 3.5, Ant Design Vue 4.2, Vite 6, vue-i18n 10 - vite.config.js: dev server on :5173 with API proxy to the Go panel on :2053; build output to ../web/dist/ - src/App.vue is currently a smoke-test placeholder — delete once the first real page (login) lands in Phase 4 - node_modules and dist are already ignored at repo root To verify locally: cd frontend && npm install && npm run dev Pages will be migrated one at a time on the vue3-migration branch. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
43 lines
1.1 KiB
Markdown
43 lines
1.1 KiB
Markdown
# 3x-ui frontend
|
|
|
|
Vue 3 + Ant Design Vue 4 + Vite. Builds into `../web/dist/`, which the
|
|
Go binary will embed via `embed.FS` once the migration reaches the page
|
|
handlers (Phase 4+).
|
|
|
|
This directory exists alongside the legacy `web/html/` Vue 2 templates
|
|
during the migration. Pages will move over one at a time on the
|
|
`vue3-migration` branch.
|
|
|
|
## Dev
|
|
|
|
```sh
|
|
cd frontend
|
|
npm install
|
|
npm run dev
|
|
```
|
|
|
|
The dev server runs on `http://localhost:5173/` and proxies API calls to
|
|
the Go panel at `http://localhost:2053/` — start the Go panel first
|
|
(`go run main.go`), then start Vite.
|
|
|
|
## Production build
|
|
|
|
```sh
|
|
npm run build
|
|
```
|
|
|
|
Outputs to `../web/dist/`. The Go binary picks it up at compile time via
|
|
`embed.FS`.
|
|
|
|
## Where things live
|
|
|
|
- `src/main.js` — app entrypoint (createApp, install Antd, mount)
|
|
- `src/App.vue` — root component (currently a smoke-test placeholder)
|
|
- `vite.config.js` — build + dev-server config
|
|
- `index.html` — Vite HTML template
|
|
|
|
## Adding new pages
|
|
|
|
For each legacy page being migrated, add an entry to
|
|
`vite.config.js` `rollupOptions.input`. Each entry produces its own
|
|
HTML file in `web/dist/`, which the Go panel route handler will serve.
|