Introduction
AceAdmin Max is an admin dashboard template built with Vue 3, TypeScript, Vite, and Naive UI. It provides an extensible application foundation rather than only a visual theme: a unified HTTP client, backend-driven menus, route and action permissions, persistent preferences, dictionaries, and reusable CRUD workflows.
Technology stack
| Area | Technology |
|---|---|
| Core | Vue 3.5, TypeScript 6, Vite 8 |
| UI | Naive UI, IconPark, vicons |
| State | Pinia, pinia-plugin-persistedstate |
| Routing | Vue Router 5 with static and dynamic routes |
| HTTP | Axios with tokens, retries, deduplication, cancellation, and prompts |
| i18n | Vue I18n with zh-CN and en-US |
| Charts | ECharts 6 |
| Content | wangEditor and Cropper.js |
| Files | SheetJS, libarchive.js, 7z-wasm, officecrypto-tool |
| Quality | vue-tsc, ESLint flat config, Prettier |
Highlights
- Three layout modes—vertical, double-column, and content fullscreen—with detailed header, sidebar, tab, breadcrumb, and footer preferences.
- Backend menus converted into lazily loaded Vue Router routes after login.
- A shared permission model for
v-auth,auth(), and table row actions. - Multi-tab navigation with
keep-alive, fixed tabs, and soft reload. - Multi-service HTTP URLs, token renewal, 401 handling, idempotent retries, request deduplication, and route-change cancellation.
- Global system configuration, dictionaries, user state, themes, and screen locking.
- Search, tables, rich text, cropping, icon selection, dragging, import, and export examples.
Security boundary
Frontend permissions improve usability but cannot enforce access control. The backend must authenticate and authorize every protected request. The default token is stored in localStorage; high-security systems should consider secure HttpOnly cookies with CSRF protection.