PrimeVue is a rich set of open source UI components for Vue.

PrimeVue is available for download on npm Registry.

# Using npm
npm install primevue

# Using yarn
yarn add primevue

# Using pnpm
pnpm add primevue

PrimeVue plugin is required to be installed with the use function to set up the default configuration.

import { createApp } from 'vue';
import PrimeVue from 'primevue/config';

const app = createApp(App);

Each component can be imported individually so that you only bundle what you use. Import path is available in the documentation of the corresponding component.

import Button from "primevue/button"

const app = createApp(App);
app.component('Button', Button);

PrimeVue has two theming modes; styled or unstyled.

Styled mode is based on pre-skinned components with opinionated themes like Material, Bootstrap or PrimeOne themes. Theme is the required css file to be imported, visit the Themes section for the complete list of available themes to choose from.

import 'primevue/resources/themes/lara-light-green/theme.css'

Unstyled mode is disabled by default for all components. Using the PrimeVue plugin during installation, set unstyled as true to enable it globally. Visit the Unstyled mode documentation for more information and examples.

import { createApp } from "vue";
import PrimeVue from "primevue/config";
const app = createApp(App);

app.use(PrimeVue, { unstyled: true });

Component prop names are described as camel case throughout the documentation however kebab-case is also fully supported. Events on the other hand should always be kebab-case.

<Dialog :showHeader="false"></Dialog>

<!-- can be written as -->

<Dialog :show-header="false"></Dialog>

We've created various samples for the popular options in the Vue ecosystem. Visit the primevue-examples repository for more samples.

Create-Vue is the recommended way to start a Vite-powered Vue project.