Releases: vuejs/pinia
[email protected]
Please refer to CHANGELOG.md for details.
Pinia v2.0.0
Stores made simple
Today Pinia is reaching its first release version, and surprisingly, it's not the v1, it's the v2! After 19 Alphas, 5 Betas, and 15 release candidates, almost 2 years from its initial release, 0.0.1
, Pinia is now reaching v2.0.0
🎉!
Thanks a lot to everybody who has been using it, specially those trying it out in its early stages (pre v1, with Vue 2).
Pinia has around 80k downloads per month and you can already find a few plugins on npm!. It has become the most complete yet light Store for Vue. It's type safe by default, highly extensible, provides advanced devtools support, is modular by design, making your bundles smaller, and will feel familiar to any person already using Vue with both, an Option and a Setup API.
You can read how it compares to Vuex on the documentation.
Going stable
After entering v2, Pinia will not release breaking changes like it used to in alphas, betas, and rcs. It will focus on providing a great DX through its typings, devtool plugin, and third party plugins. More concrete documentation in the form of Cookbook entries and maybe even videos, are yet to come!
Why skip v1?
Initially, I was keeping two active branches for Pinia and I was releasing v.0.x.x
versions at the same time as v2.0.0-0
versions, back-porting across repositories any fixes and new features. This was sometimes easy to deal with with git cherry-pick
but when that didn't work, it quickly became hard to keep both branches in sync. At some point, I managed to merge both branches together by using vue-demi
and obtain a version of Pinia that worked with both Vue 2 and Vue 3. After that, I decided to stop working on the v1 branch and focus on the v2, which has now reached a stable release version. Because of this, there was never (and will never be) a v1.0.0
.
What is next?
Pinia has been production ready for a couple of months now. The only reason it was kept in an RC state was to be able to bring minor breaking changes until the API felt completely right. Now it's time to focus on keeping it up to date with any improvements we might come up for Vuex 5. The fate of Pinia is not clear yet but it shall either be absorbed by Vuex or become a superset of it, keeping its API as aligned as possible with Vuex 5.
Trying it out
If you want to give Pinia a quick try, check out this demo with Vue 3 or this other one with Nuxt 3. You can find a complete list of the examples here.
To learn more about Pinia, take a loot at the documentation.
Supporting Pinia development
If your company uses Vue Router, please consider supporting its development by supporting me 🙏 . It will mean a lot and really help me to keep working on improving the Vue Ecosystem.
If you were already using the release candidate version of Pinia, you can find the list of improvements on the CHANGELOG.md.
[email protected]
Please refer to CHANGELOG.md for details.
[email protected]
Please refer to CHANGELOG.md for details.
[email protected]
Please refer to CHANGELOG.md for details.
[email protected]
Please refer to CHANGELOG.md for details.
[email protected]
Please refer to CHANGELOG.md for details.
[email protected]
Please refer to CHANGELOG.md for details.
[email protected]
Please refer to CHANGELOG.md for details.
[email protected]
Please refer to CHANGELOG.md for details.