🎉 Riot Account Manager v3.1.0 — UX Upgrade + Encrypted Backup & Theme
Bản phát hành này gộp toàn bộ nâng cấp từ v3.0.0 (giao diện & trải nghiệm người dùng) và v3.1.0 (sao lưu mã hóa + giao diện Sáng/Tối). Tất cả thay đổi đều giữ nguyên sự ổn định và toàn bộ luồng nghiệp vụ hiện có (quản lý tài khoản + tự động đăng nhập Riot Client), tương thích ngược với dữ liệu cũ.
✨ Điểm nổi bật
Giao diện & trải nghiệm (v3.0.0)
- 🎨 Thiết kế hiện đại hơn — nút bo góc, gradient, shadow nhẹ, animation mượt.
- 🧭 Cụm Thêm / Sửa / Xóa chuyển sang icon-only kèm tooltip.
⚠️ Xác nhận trước khi xóa — hộp thoại "Hủy / Xác nhận xóa", tránh xóa nhầm.- 👋 Màn hình chào mừng thân thiện cho người dùng lần đầu.
- 🔐 Kiểm soát trạng thái đăng nhập — không chạy lại quy trình khi đã đăng nhập.
- 🚪 Đăng xuất nhanh — chuyển tài khoản dễ dàng.
- 🧹 Refactor mã nguồn, tách component tái sử dụng, dọn CSS thừa.
Sao lưu & giao diện (v3.1.0)
- 📤 Export dữ liệu ra file
.backupđã mã hóa. - 📥 Import dữ liệu — khôi phục từ file backup.
- 🔑 Sao lưu mã hóa bằng mật khẩu — AES-256-GCM + PBKDF2 (Web Crypto API).
- ♻️ Khôi phục có kiểm tra — xác nhận trước khi ghi đè + kiểm tra toàn vẹn.
- 🌗 Light / Dark Theme — kèm tùy chọn theo Hệ thống.
- 💾 Ghi nhớ giao diện — giữ nguyên theme sau khi khởi động lại.
🚀 Dành cho người dùng
- Thao tác gọn gàng hơn: ba nút Thêm / Sửa / Xóa giờ chỉ còn biểu tượng, vuông vắn và cân đối với nút Đăng nhập. Rê chuột vào mỗi nút sẽ hiện tooltip giải thích.
- An toàn hơn khi xóa: mỗi lần xóa tài khoản, ứng dụng hỏi xác nhận kèm cảnh báo "Hành động này không thể hoàn tác.". Chỉ khi bấm Xác nhận xóa thì tài khoản mới bị xóa.
- Khởi đầu dễ dàng: lần đầu mở ứng dụng có màn hình chào mừng hướng dẫn từng bước; có thể tích "Không hiển thị lại".
- Rõ ràng về trạng thái đăng nhập: tài khoản đang đăng nhập được đánh dấu badge "Đang đăng nhập". Bấm Đăng nhập lại đúng tài khoản đó sẽ hiện thông báo + cho phép Đăng xuất thay vì làm lại từ đầu.
- Sao lưu an toàn: vào Cài đặt → Sao lưu & Khôi phục → Xuất dữ liệu, đặt mật khẩu (nhập lại để xác nhận) để tạo file
.backupđược mã hóa. Mật khẩu không được lưu ở bất kỳ đâu — hãy ghi nhớ kỹ. - Khôi phục dễ dàng: chọn Nhập dữ liệu, chọn file, nhập đúng mật khẩu; ứng dụng hỏi xác nhận "Việc nhập dữ liệu sẽ ghi đè dữ liệu hiện tại…" trước khi áp dụng. Báo lỗi rõ ràng khi sai mật khẩu / file hỏng / sai định dạng.
- Đổi giao diện tức thì: bấm nút ☀/🌙 trên thanh tiêu đề, hoặc chọn Sáng/Tối/Hệ thống trong Cài đặt → Giao diện. Đổi ngay, không reload, và được ghi nhớ.
👨💻 Dành cho nhà phát triển
- Component hóa & tái sử dụng: thêm
ConfirmDialog,LoginStatusDialog,BackupDialog, loại bỏ phụ thuộc vàowindow.confirmcủa trình duyệt. - Quản lý trạng thái phía client: phiên đăng nhập theo dõi trong React state (
session), tách biệt và không ảnh hưởng logic backend Rust. - Mã hóa ở frontend bằng Web Crypto API: AES-256-GCM, khóa dẫn xuất PBKDF2-SHA256 (210.000 vòng),
salt16 byte +iv12 byte ngẫu nhiên mỗi file. - Định dạng
.backupcó versioning (formatVersion,dataVersion,createdAt) để tương thích và nâng cấp an toàn về sau. - Backend Rust gọn nhẹ: thêm command
replace_accounts,read_text_file,write_text_file+ quyềndialog:allow-save; chỉ đọc/ghi bytes thô, không đụng tới logic lưu trữ mã hóa cục bộ sẵn có. - Theme bằng CSS variables +
data-themetrên<html>, cóThemeProvidervà áp dụng sớm trongindex.htmlđể tránh nhấp nháy (FOUC). - CSS sạch hơn: dọn các CSS variable không còn dùng, gom style nút toolbar theo hệ thống thống nhất (base
.toolbar-btn+ biến thể). - Đa nền tảng: desktop dùng dialog gốc + lệnh Rust; web preview fallback bằng Blob download /
<input type=file>+localStorage. - Đồng bộ phiên bản: bump
2.0.0 → 3.1.0ở tất cả nơi liên quan (root & app-tauripackage.json, Cargo workspace,Cargo.lock,tauri.conf.json, About dialog).
🔒 Bảo mật
- Backup được mã hóa đầu-cuối bằng mật khẩu người dùng.
- Không lưu mật khẩu ở bất kỳ đâu.
- Kiểm tra tính toàn vẹn khi khôi phục (AES-GCM authentication + kiểm tra định dạng/phiên bản).
🌟 Điểm mạnh của dự án
- Mã nguồn rõ ràng, dễ mở rộng (frontend React/TS tách bạch khỏi lõi Rust).
- Giao diện thân thiện, hiện đại, hỗ trợ Sáng/Tối và đa ngôn ngữ (vi/en).
- An toàn dữ liệu: mã hóa cục bộ, sao lưu có mật khẩu.
- Trải nghiệm người dùng được cải thiện rõ rệt.
- Dễ triển khai và phát triển tiếp (Tauri đóng gói gọn, native).
📌 Ghi chú phát hành
Đây là bản phát hành gộp v3.0.0 + v3.1.0, tập trung nâng cao trải nghiệm người dùng, cải thiện giao diện và bổ sung sao lưu/khôi phục an toàn. Không có thay đổi phá vỡ (breaking change) với dữ liệu hay luồng đăng nhập hiện có; dữ liệu tài khoản từ các phiên bản trước vẫn được giữ nguyên.

What's Changed
- Improve account action UX with labeled/color-coded controls and contextual delete confirmation by @Copilot in #15
- v3.0.0 — UX & Interface Upgrade by @DangNghia17 in #16
- v3.1.0 — Encrypted Import/Export Backup & Light/Dark Theme by @DangNghia17 in #17
Full Changelog: v2.0.3...v3.1.0
What's Changed
- v3.1.0 — Encrypted Import/Export Backup & Light/Dark Theme by @DangNghia17 in #17
- Cursor/ux interface upgrade v3 1c9b by @DangNghia17 in #18
Full Changelog: v3.0.0...v3.1.0