Báo cáo tối ưu môi trường phát triển — Riot Account Manager (Tauri v2).
- Thêm
package.jsonở root:npm install→ tự càiapp-tauri/. npm run dev= web preview (Vite), không cần Rust/Tauri.
npm run dev/npm run webmở giao diện tại http://localhost:1420.- Tạo
app-tauri/src/lib/api.ts— lớp IPC thống nhất với mock fallback khi chạy browser. mock-store.tslưu account/config tronglocalStorage— không crash, không lỗi import Tauri.ConfigPanelkhông còn import trực tiếp@tauri-apps/plugin-dialog(dynamic import quaapi).
| Script | Chức năng |
|---|---|
npm run check |
TypeScript + cargo test/check ram-core |
npm run lint |
tsc --noEmit |
npm run test |
cargo test -p ram-core (8 tests, gồm tương thích Java) |
npm run doctor |
Kiểm tra Node/Rust/Tauri/deps/config + gợi ý sửa |
Dockerfile+docker-compose.yml:docker compose up→ web preview, không cần cài Node/Rust local.
.github/workflows/ci.yml: mỗi PR/pushmainchạy TypeScript check +cargo test -p ram-core+doctor.- Release Windows giữ nguyên
tauri-release.yml.
rust-toolchain.tomlpinstable≥ 1.85 (dependency Tauri cần edition2024).
README_DEV.md— 3 cách dev (web / Tauri / release), tối đa vài lệnh mỗi cách.
| Thành phần | Lý do |
|---|---|
src/main/java/ |
Đã migrate sang Tauri — không còn dùng |
runtime/ (~21 MB JRE bundled) |
Không cần cho Tauri |
pom.xml, MANIFEST.MF |
Build Maven Java |
scripts/build.sh, build.ps1, package.ps1 |
Script build Java/jpackage |
dist/launch4j-config.xml |
Launch4j legacy |
.github/workflows/release.yml |
CI build Java |
ANALYSIS.md, README_UPDATE.md, README_FOR_DEV_*.md |
Tài liệu Java cũ |
| Thành phần | Lý do |
|---|---|
@tauri-apps/plugin-notification (npm) |
Đăng ký nhưng không dùng |
tauri-plugin-notification (Rust) |
Tương tự |
Permission notification:default |
Không còn plugin |
Giữ lại: docs/ (mô tả tương thích dữ liệu Java cũ cho migration), README_MIGRATION.md, KNOWN_ISSUES.md.
| File / khu vực | Thay đổi |
|---|---|
package.json (root) |
Workspace wrapper + scripts delegate |
app-tauri/package.json |
Thêm web, check, lint, test, doctor, tauri:dev/build |
app-tauri/src/lib/ |
Mới — api.ts, platform.ts, mock-store.ts (file api.ts thiếu trên nhánh migration) |
app-tauri/vite.config.ts |
host: true cho Docker/LAN |
.gitignore |
Thêm node_modules, dist, target Tauri |
app-tauri/Cargo.toml |
rust-version 1.85 |
Không đổi: giao diện CSS/JSX, luồng nghiệp vụ, commands Rust, mã hóa/migration dữ liệu.
git pull
npm install
npm run devMở http://localhost:1420 — test UI + CRUD account (mock). Không cần Rust.
Hoặc Docker:
git pull
docker compose upKiểm tra logic backend (không cần UI):
npm run testnpm install
npm run buildOutput: app-tauri/dist/ (index.html + assets/).
Xem thử: cd app-tauri && npm run preview → http://localhost:4173 (mock API, không phải app desktop).
Lưu ý: Đây là file tĩnh cho Vite/Tauri bundle — không có .exe. Tauri tự dùng thư mục này khi tauri:build.
npm install
npm run tauri:buildOutput:
app-tauri/target/release/RiotAccountManager.exe(portable)app-tauri/target/release/bundle/nsis/*.exe(installer)app-tauri/target/release/bundle/msi/*.msi(installer)
Hoặc push tag vX.Y.Z → CI build NSIS/MSI/portable tự động.
- Node.js 18+ (duy nhất)
- Node.js 18+
- Rust stable ≥ 1.85 (
rustup default stable) - WebView2 (có sẵn Win10/11)
- MSVC Build Tools (khi build release lần đầu)
- Auto-login (
enigo), focus/launch Riot Client, DPAPI mã hóa, startup registry — cần máy Windows thật.
| Kiểm tra | Kết quả |
|---|---|
npm run check:web |
PASS |
npm run build |
PASS |
npm run test (8 tests ram-core) |
PASS |
npm run doctor |
PASS |
npm run dev (HTTP 200) |
PASS |
Full cargo check Tauri trên Linux |
Cần libgtk/webkit (chỉ cần trên Windows cho release) |