
About Pinia
Pinia is an open source state store for Vue.js applications. It is the official option for sharing state across Vue components, and it is designed to be type safe and modular.
What it does
Pinia lets you define stores as small modules, each with state, getters and actions. Types are inferred from the store definition, so editors can offer completion even in JavaScript files. It connects to the Vue devtools, and you can extend it with plugins that react to store changes or add features such as local storage syncing.
Key features
- Stores with state, getters and actions
- Type inference without extra annotations
- Vue devtools integration
- Plugins for extending store behaviour
- Very small library size
Who it's for
Vue developers who want a shared store that feels as familiar as a component. It fits both small apps and larger ones that split their state into many stores.
Pricing and good to know
Pinia is free and open source under the MIT license. It is built for Vue, so it is not a fit for React projects. The current docs cover version 3 and include a cheat sheet for quick reference.
Highlights
- Stores with state, getters and actions
- Type inference without extra annotations
- Vue devtools integration for inspecting stores
- Plugins that react to store changes
- Very small library size












