Vuero is a hybrid design system built with Vue 3 Composition API, not a theme or a framework, offering ready-made pages and a modular set of UI elements to accelerate product development.
What Vuero is and who it’s for
Vuero provides ready pages and a collection of elements to build dashboards, forms, layouts, profiles, apps, and other components. It is designed to help you start quickly while remaining flexible for custom projects.
- Not a WordPress theme
- Full rewrite using the Vue 3 Composition API
- Includes dashboards, forms, layouts, profiles, apps, elements, components, and more
Core technologies and architecture
- Built with Vue 3 — Vue is a progressive framework for building user interfaces, designed to be incrementally adoptable.
- Vite Powered — Dev server with ES Module imports, Rollup-based production bundling, fast start, HMR, and on-demand compilation.
- Bulma framework — Lightweight CSS framework based on Flexbox, mobile-first grid, and responsive modifiers.
Theming, styling, and customization
- Theming capabilities — Vuero styles are written in SCSS and output to a single minified CSS core; easy to reuse existing colors or create a new theme quickly.
- Modular Core — SCSS source files are organized modularly for maintainability; Bulma source files and variables can be customized before building Vuero.
Starter content and starter pages
- Nice looking starters with 230 demo pages
- Complete admin / webapp UI ready to use in various platforms or custom projects
Layout, responsiveness, and design system features
- Responsive design — Based on Flexbox, optimized for mobile and tablets; ultra-responsive.
- Template features — 230+ demo pages, dark mode support, and a comprehensive set of UI components.
- Native dark mode, CSS color features, and customizable variables
Documentation, assets, and distribution notes
- Documentation available online
- Fonts: Montserrat, Roboto
- Images: Unsplash, Pexels; Illustrations: Freepik, Undraw
NOTE: Please note that photos are not included in the main download files.
Changelog and version history (highlights)
Version 3.1.0 - Apr 04, 2025
Features
- enable eslint cache
- impove dev SSR error rendering with youch
- migrate electron example to electron-vite
- migrate to eslint v9
- refactor useVFieldContext to use useId
- replace ref with useTemplateRef
- upgrade major dependencies
- use new lazy hydration strategies
Bug Fixes
- display ToolbarUserProfile on sidebar with label layout
- typescript issues
- update vue router and unplugin-vue-router
Refactors
- auth: create useUserToken to use localstorage when client only and cookie with SSR
- darkmode: replace pinia store with plugin and composable + use native view transition
- layouts: rework navbar layout to allow customization
- server: simplify ssr and ssg with vite runtime api, remove optional vite plugins
Version 3.0.0 - May 10, 2024
⚠ BREAKING CHANGES
- use css colors 5 features, remove generated hsl css variables via scss
- auth: create useUserToken to use localstorage when client only and cookie with SSR
- server: simplify ssr and ssg with vite runtime api, remove optional vite plugins
- replace view-wapper pinia store with vuero-context plugin and composable
- darkmode: replace pinia store with plugin and composable + use native view transition
- darkmode: replace pinia store with plugin and composable + use native view transition
- layouts: remove navbar-dropdown layout, now included in navbar
- layouts: rework navbar layout to allow customization
- layouts: rework navsearch layout to allow customization
- layouts: rework sideblock layout to allow customization
- layouts: rework sidebar layout to allow customization
Features
- add Client quickstarter
- add Dockerfile and docker compose for each quickstarters
- add Electron quickstarter
- add landing layout
- add Nuxt quickstarter
- add src/composables, src/stores, and src/utils to auto import directories
- add SSR quickstarter
- add VDarkmodeSwitch component
- add VLink component to handle external links
- base: add end props to vdropdown
- configuration for max content size on layouts
- create useTinySlider composable
- demo: add background grid effect
- demo: add hello world server api route
- demo: use focus trap and teleport in panels
- enable new vue devtools
- replace deprecated purge-icon with iconify-icon webcomponent
- replace simplebar with native css scrollbars
- ssr: render app as stream + add cache header plugin example
- update unplugin router data loader
- use css colors 5 features, remove generated hsl css variables via scss
- use fontsource variables font
- use VLink in layout components
- VPageContentWrapper: add size property
Bug Fixes
- a11y: bind enter instead of space key for default actions
- add overlay when mobile nav is open
- apexcharts: line colors in darkmode
- avatar stack darkmode
- demo: markdown to vue ssr prerender + hmr
- demo: update date picker range notation
- demo: use freepik image in product widget
- demo: use VCheckbox in inbox message list
- demo: use VTabs component in pages and panels
- plugins: eager load plugins to prevent hmr issues
- purge-comment: avoid removing vue core comments
- quickstarter: add missing illustration
- quickstarter: add missing webp files
- remove unnecessary import + lazy load billboard and tiny slider only on client
- remove unused scss
- remove unused useSidebar store
- remove usage of shamefully hoist
- replace demo photo with remote images
- ssr: hydration issues with teleport, darkmode, and id
- use VIcon component to use any icon provider
- VAnimatedCheckbox: compare raw objects
- VCollapseLinks: display content on mounted if contains active link
Refactors
- auth: create useUserToken to use localstorage when client only and cookie with SSR
- darkmode: replace pinia store with plugin and composable + use native view transition
- darkmode: replace pinia store with plugin and composable + use native view transition
- layouts!: remove
src/layouts from components auto load dirs
- layouts: remove navbar-dropdown layout, now included in navbar
- layouts: rework auth layout, embed styles
- layouts: rework minimal layout, embed styles
- layouts: rework navbar layout to allow customization
- layouts: rework navsearch layout to allow customization
- layouts: rework sidebar layout to allow customization
- layouts: rework sideblock layout to allow customization
- move project to mono repo
- replace view-wapper pinia store with vuero-context plugin and composable
- server: simplify ssr and ssg with vite runtime api, remove optional vite plugins
Version 2.9.0 - Jan 23, 2024
Features
- add eslint-plugin-sonarjs and fix linting issues
- add html minifier option for ssg/ssr builds
- improve server for ssr/ssg + expose h3 event to ssr context
- migrate component documentation to vue-component-meta
- replace prettier with eslint stylistic
- replace shiki with shikiji
- upgrade deps + stable vue 3.4
- upgrade to vite 5
- upgrade to vue 3.4
- use vuero plugin to register apexchart component
- VIMaskInput: use generic for option prop
Bug Fixes
- extract runtime dependencies from devDepencencies
- improve external component typing
- update HTML minifier configuration for bun support
- VAnimatedCheckbox: use plain string or number in model value generic type
- VAnimatedCheckbox: use unknow in model value generic type
- VCollapse: move default p tag in collapse-item-content slot
- vee-validate: update form initial values
- VPlyr: load dependency only on client
Version 2.8.1 - Aug 26, 2023
Bug Fixes
- add vite purge comments plugin + minify SSR/SSG html output
- disable vite plugin doc in quickstarter
- quickstarter: include missing preinstall script
- replace http-server with vercel serve
- update dependencies and vite 5
- update tsconfig as vitejs recommendation
- use jiti instead of esno for prepare shiki script
- use non root user in dockerfile
Version 2.7.0 - May 07, 2023
Features
- add datatables, fix v-calendar latest styles, close #209
- add RTL support
- i18n: set lang and dir attributes
- rework landing page
Bug Fixes
- a11y: improve emphasis and accessibility
- various UI and theme fixes
Version 2.6.0 - Jan 01, 2023
Features
- stay-focus helper and documentation updates
- convert project to module + migrate docs to rehype and shiki
- i18n: extract translations, migrate to unplugin-vue-i18n
- ssr: improve server rendering compatibility
- v-action: add to props so component can be used as router link
- v-markdown-editor: add accessible component to edit markdown
- v-markdown-preview: add component to render markdown with remark and shiki
- v-photos-swipe: upgrade to photoswipe v5
- v-textarea: add autogrow property
Bug Fixes
- darkmode: detect color scheme before app start
- demo-data: convert to demo data to composable to avoid cross state pollution
- router: blank pages on redirect
Version 2.5.0 - Dec 11, 2022
Features
Bug Fixes
- add vdatepicker example with vee validate
- improve useNotyf typings
- profile-edit: navigation links between tabs
- remove keys from transition
- v-plyr: embed youtube source to avoid CORS issue
- wizard-v1: placeholder pages styles on page refresh
Version 2.4.0 - Sep 12, 2022
Features
- example of router data loader (experimental feature)
- Add roadmap UI
- vite auto-import plugin
- cypress doc: tests suites examples, upgrade to v10
- pre compress images, minify options
Bug Fixes
- router: add scroll behavior between routes
- ssr: add experimental server side rendering support
- upgrade vite to v3.x
Version 2.3.0 - Apr 24, 2022
Features
- add plugin system
- docs: add copy color snippet button
- forms: refactor and add components with validation
- v-checkbox: allow to use boolean as value
- v-tabs: allow v-model on selected props
- wizard: refactor wizard v1 with nested routes
Bug Fixes
- multiselect: focusable with labels
- border style consistency
- scss: reduce end bundle size
Version 2.2.0 - Jan 3, 2022
Features
- accessibility: keyboard navigation improvements
- layout: new Sideblock layout
- i18n: theme colors composable
Version 2.1.0 - Oct 6, 2021
Features
- accessibility: eslint plugin for accessibility in Vue 3 files
- build: rollup purgecss plugin
- notyf: improved useNotif
- pinia: replace userSession and wizard with stores
- v-credit-card, v-peity, v-file-pond enhancements
Version 2.0.0 - Sep 20, 2021
⚠ BREAKING CHANGES
- typescript: remove dashes from component names
- typescript: enable volar and vue-tsc
Features
- add soccer and jobs dashboards
- add VFlex, VFlexItem, VGrid and VGridItem components
- add video player on home
- i18n: translate auth/signup-2 page
- typescript: enable volar and vue-tsc
Version 1.4.0 - Sep 9, 2021
Features
- collapse-model: add v-collapsemodel component
- components: add v-flex and documentation
- docs: color picker on documentation
Version 1.3.1 - Jul 26, 2021
- fix: remove usage of useContext, replace with useSlots
- fix: add vue-demi dependencies
- fix: update vue and vue/compiler-sfc
Version 1.3.0 - Jul 18, 2021
- fix: circular menu watcher effect
- feat: add redirection pages examples in auth and error
Version 1.2.1 - Jun 22, 2021
- fix: broken account mobile menu on navbar layouts
- fix: colored navbar notifications dropdown hover bug
- fix: responsive onboarding pages
Version 1.2.0 - Jun 21, 2021
- feat: add maps pages with Mapbox
- feat: extract messaging layout
- feat: simplify minimal layout
- feat: simplify navbar and sidebar layouts
Version 1.1.0 - Apr 22, 2021
- chore: update deps, extract templates
- feat: add forms component and documentation
- feat: implement form stepper and marketing pages
Version 1.0.x
Early versions introducing the Vuero design system, components, and initial documentation and tooling.