A native-HTML/CSS/JavaScript Web UI component library that lets developers build interfaces without a frontend framework.
youzan/vant
A lightweight, customizable Vue UI component library for building mobile web apps, with 80+ components.
- Stars
- 24,411
- Forks
- 9,355
- Open issues
- 233
- Last commit
- 2 days ago
What is it?
Vant is a UI component library for building mobile web applications with Vue. It provides more than 80 components covering common mobile interface needs, and it is written in TypeScript with no third-party runtime dependencies.
Vant supports both Vue 2 and Vue 3, and it works with Nuxt 2 and Nuxt 3 through a separate module. Components can be imported individually with tree shaking, and themes can be customized through CSS variables. Dark mode, SSR, and built-in i18n with 30+ languages are also supported.
The project maintains separate branches for Vue 2 and Vue 3 releases, and the official documentation includes demos for each component. A companion project, vant-weapp, provides the same style of components for WeChat Mini Programs.
Key features
- 01Provides 80+ mobile-oriented UI components.
- 02Written in TypeScript with zero third-party dependencies.
- 03Supports Vue 2 and Vue 3, plus Nuxt 2 and Nuxt 3.
- 04Supports tree shaking, custom themes, and dark mode.
- 05Includes built-in i18n with 30+ languages and SSR support.
Use cases
- Building mobile H5 pages or web apps in Vue.
- Creating e-commerce or content sites that need standard mobile components like lists, popups, and tabs.
- Developing server-rendered mobile sites with Nuxt.
Quick start
- 1
Install Vant with npm (Vue 3 project)
npm i vant - 2
Import the style and register the components you need in your app
Things to know
- Browser support for Vant 3/4 requires Chrome 51+ and iOS 10+, and Vant 2 targets older Android and iOS versions.
- Vant is designed for mobile web apps and is not intended for desktop-focused interfaces.
In collections
Topics
FAQ
- What is vant?
- A lightweight, customizable Vue UI component library for building mobile web apps, with 80+ components. Vant is a UI component library for building mobile web applications with Vue. It provides more than 80 components covering common mobile interface needs, and it is written in TypeScript with no third-party runtime dependencies.
- Is vant free to use? What license does it have?
- vant is open source under the MIT license. Check the license terms before using it in commercial products.
- Is vant still maintained?
- Actively maintained. The last commit to vant was on Nov 5, 2026.
- What can I use vant for?
- Building mobile H5 pages or web apps in Vue. Creating e-commerce or content sites that need standard mobile components like lists, popups, and tabs. Developing server-rendered mobile sites with Nuxt.
- How do I install vant?
- Install Vant with npm (Vue 3 project): npm i vant Import the style and register the components you need in your app
- Where can I get vant?
- The source code and installation instructions are on GitHub: https://github.com/youzan/vant
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
An enterprise-class React UI component library and design language for building web applications.
A Material Design UI component framework for Vue, providing handcrafted, responsive components for building web applications.
A Vue 3 component library that ports BootstrapVue's components to Bootstrap 5 with TypeScript types.
A JavaScript file upload library with drag-and-drop, image optimization, chunked uploads and framework adapters for React, Vue, Angular and Svelte.
A Vue 3 port of shadcn/ui: copy-paste, customizable UI components built on Reka UI for your own component library.