finds.dev← search

// the find

vbenjs/vue-vben-admin

★ 32,633 · Vue · MIT · updated Jun 2026

A modern vue admin panel built with Vue3, Shadcn UI, Vite, TypeScript, and Monorepo. It's fast!

A Vue 3 admin panel starter that ships four separate app flavors (Ant Design, Element Plus, Naive UI, Shadcn) from a single monorepo, sharing a common core via pnpm workspaces. Aimed at teams who need a pre-wired admin shell with auth, dynamic routing, i18n, and theme switching already done. The v5 rewrite is a clean break from v2 — not a migration-friendly upgrade.

The multi-UI-library approach is genuinely useful: you pick one flavor and the adapter pattern means the shared packages don't bleed design system assumptions into your app. The monorepo tooling is solid — pnpm workspaces, changesets for versioning, a Nitro-based mock backend you can actually run locally without a real API. Dynamic route-based permissions are baked in and the implementation (access.ts + router guard) is straightforward enough to actually understand and modify. Active maintenance with commits as recent as today and 32k stars means you won't be debugging against an abandoned repo.

Four UI library flavors sounds flexible but means most of the demo pages are duplicated across apps/web-antd, apps/web-ele, apps/web-naive, apps/web-antdv-next — finding where to actually make a change requires knowing which flavor you're in. The backend-mock is Nitro with hardcoded mock data, and there's no guidance on how to swap it for a real API beyond 'change the request.ts base URL', which will bite you the first time you hit auth token refresh differences. Documentation lives at an external site and is primarily in Chinese — the English docs are a translation and lag behind. No tests visible in the tree; the CI workflow likely just runs the build, so you're adopting a large codebase with zero coverage to lean on when you start modifying core behavior.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →