NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #4295 most downloaded on npm
👻 Primitive and flexible state management for React
Last release 5 days ago
29 Sep 2026
Ships fairly regularly
a new release about every 3 weeks
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
214 releases · first in 2020
One column per quarter.
This fixes a regression in useAtomValue introduced in v3.0.0. Please update.
This fixes a regression in useAtomValue introduced in v3.0.0. Please update.
Full Changelog: v3.0.0...v3.0.1
This is a mostly backward-compatible update, dropping some legacy support and deprecated APIs.
This is a mostly backward-compatible update, dropping some legacy support and deprecated APIs.
https://github.com/pmndrs/jotai/blob/main/docs/guides/migrating-to-v3.mdx
Full Changelog: v2.20.3...v3.0.0
fix(unwrap): prevent infinite microtask loop on rejected source recompute by @dai-shi with @Copilot in #3363
Includes v2.20.3 changes.
Full Changelog: v3.0.0-alpha.0...v3.0.0-alpha.1
https://github.com/pmndrs/jotai/blob/v3/docs/guides/migrating-to-v3.mdx
https://github.com/pmndrs/jotai/blob/v3/docs/guides/migrating-to-v3.mdx
Full Changelog: v2.20.2...v3.0.0-alpha.0
fix(unwrap): prevent infinite microtask loop on rejected source recompute by @dai-shi with @Copilot in #3363
A fix in a util.
Full Changelog: v2.20.2...v2.20.3
This release fixes a regression in some edge case introduced in v2.18.1.
This release fixes a regression in some edge case introduced in v2.18.1.
Full Changelog: v2.20.1...v2.20.2
This release includes a few small fixes.
This release includes a few small fixes.
Full Changelog: v2.20.0...v2.20.1
This release improves performance in high-throughput scenarios. Huge kudos to @dmaskasky !
This release improves performance in high-throughput scenarios. Huge kudos to @dmaskasky!
Full Changelog: v2.19.1...v2.20.0
This release includes several small refactors to improve performance.
This release includes several small refactors to improve performance.
Full Changelog: v2.19.0...v2.19.1
fix(react): deprecate delay option by @dai-shi in #3264
We improved the core to enable atom caching for performance for some cases.
Full Changelog: v2.18.1...v2.19.0
This release fixes a regression introduced in v2.12.1, which affects an uncommon edge case.
This release fixes a regression introduced in v2.12.1, which affects an uncommon edge case.
Full Changelog: v2.18.0...v2.18.1
feat: deprecate jotai/babel in favor of jotai-babel by @dai-shi in #3236
We moved jotai/babel to jotai-babel.
If you use the preset:
{
- "presets": ["jotai/babel/preset"]
+ "presets": ["jotai-babel/preset"]
}If you use a plugin:
{
- "plugins": ["jotai/babel/plugin-debug-label"]
+ "plugins": ["jotai-babel/plugin-debug-label"]
}Full Changelog: v2.17.1...v2.18.0
Small typing improvements. If you are using v2.16 or earlier, we recommend upgrading to the latest version.
Small typing improvements. If you are using v2.16 or earlier, we recommend upgrading to the latest version.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.17.0...v2.17.1
This release deprecates some features, which will be dropped in v3.
This release deprecates some features, which will be dropped in v3.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.16.2...v2.17.0
Fixes unwrap and loadable, resolving a regression introduced in v2.15.2.
Fixes unwrap and loadable, resolving a regression introduced in v2.15.2.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.16.1...v2.16.2
This fixes an internal API issue that affects ecosystem libraries.
This fixes an internal API issue that affects ecosystem libraries.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.16.0...v2.16.1
This version deprecates atomFamily in jotai/utils in favor of jotai-family, and includes some internal changes.
This version deprecates atomFamily in jotai/utils in favor of jotai-family, and includes some internal changes.
jotai/utils (migrate to jotai-family) by @dmaskasky in https://github.com/pmndrs/jotai/pull/3187Full Changelog: https://github.com/pmndrs/jotai/compare/v2.15.2...v2.16.0
This release introduces some internal changes. In particular, it adds a warning when unsupported store mutations (side effects) are detected.
This release introduces some internal changes. In particular, it adds a warning when unsupported store mutations (side effects) are detected.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.15.1...v2.15.2
A minor but important fix in utils.
A minor but important fix in utils.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.15.0...v2.15.1
This is another change in the internal functions of the core, to help Jotai ecosystem libraries.
This is another change in the internal functions of the core, to help Jotai ecosystem libraries.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.14.0...v2.15.0
This version changes the internal functions of the core. Libraries that depend on them, such as jotai-devtools, need to be updated correspondingly.
This version changes the internal functions of the core. Libraries that depend on them, such as jotai-devtools, need to be updated correspondingly.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.13.1...v2.14.0
This version fixes some types in utils.
This version fixes some types in utils.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.13.0...v2.13.1
This removes the deprecated devstore. Be sure to use the latest jotai-devtools.
This removes the deprecated devstore. Be sure to use the latest jotai-devtools.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.12.5...v2.13.0
An improvement for some edge cases.
An improvement for some edge cases.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.12.4...v2.12.5
We deprecate devstore capability, which will be dropped in the next minor version. Please use the latest jotai-devtools library.
We deprecate devstore capability, which will be dropped in the next minor version. Please use the latest jotai-devtools library.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.12.3...v2.12.4
This introduces an internal capability for jotai-devtools.
This introduces an internal capability for jotai-devtools.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.12.2...v2.12.3
It includes some refactors and some minor fixes.
It includes some refactors and some minor fixes.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.12.1...v2.12.2
This fixes an internal behavior necessary for some Jotai ecosystem libraries.
This fixes an internal behavior necessary for some Jotai ecosystem libraries.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.12.0...v2.12.1
This introduces a significant change in the history of Jotai development. The Jotai core aims to remain minimal while supporting the growth of the eco
This introduces a significant change in the history of Jotai development. The Jotai core aims to remain minimal while supporting the growth of the ecosystem. It now exposes some internal functions for the ecosystem.
For library authors, please make sure to pin the jotai package version if you rely on these internal functions.
Huge thanks to @dmaskasky for helping finalize the API.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.11.3...v2.12.0
Unfortunately, we encountered another regression with the v2.11 rearchitecture. We hope there are no more issues, but we can't be sure if it's stable
Unfortunately, we encountered another regression with the v2.11 rearchitecture. We hope there are no more issues, but we can't be sure if it's stable unless no more are reported. Please give it a try and let us know if you find anything!
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.11.2...v2.11.3
There was a regression in v2.11.1, which is fixed in this patch.
There was a regression in v2.11.1, which is fixed in this patch.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.11.1...v2.11.2
Jotai v2.11.0 was a big change, and we faced some fundamental issues. It required time to reconsider the architecture from the ground up. We've added
Jotai v2.11.0 was a big change, and we faced some fundamental issues. It required time to reconsider the architecture from the ground up. We've added various tests, and this patch version should be more stable.
Having that said, we are still in the middle of the re-architecture. If you prefer to stay away from bleeding-edge features and encounter no bugs, feel free to keep using the previous versions.
Kudos to @dmaskasky
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.11.0...v2.11.1
There are no public API changes, but some internal behaviors have been improved. Now, atom updates are batched in a single write, which might provide
There are no public API changes, but some internal behaviors have been improved. Now, atom updates are batched in a single write, which might provide a performance benefit in certain edge cases. This feature has been requested actually for a long time, and it's finally implemented. See also #2782.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.10.4...v2.11.0
A minor improvement for some edge cases. (For more information, see #2789.)
A minor improvement for some edge cases. (For more information, see #2789.)
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.10.3...v2.10.4
This fixes various edge cases. Huge thanks to @dmaskasky ! 🎉
This fixes various edge cases. Huge thanks to @dmaskasky ! 🎉
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.10.2...v2.10.3
Fixed some jotai/utils for a regression in v2.10.0.
Fixed some jotai/utils for a regression in v2.10.0.
useAtom(undefined) or useAtom(null) by @kevinschaich in https://github.com/pmndrs/jotai/pull/2778Full Changelog: https://github.com/pmndrs/jotai/compare/v2.10.1...v2.10.2
This fixes a bug in an extreme edge case. If you find this change breaks something, please report to us.
This fixes a bug in an extreme edge case. If you find this change breaks something, please report to us.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.10.0...v2.10.1
It comes with another significant internal change to address some edge cases.
It comes with another significant internal change to address some edge cases.
Since v2.9.0, we've been working on some internal refactors to support more edge cases and clean up the code.
Users are encouraged to update to the new versions eventually, but if you're satisfied with the current situation and prefer to avoid temporary instability, you can stick with v2.8.4 for now.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.9.3...v2.10.0
This fixes a regression in an edge case that is introduced in v2.6.4.
This fixes a regression in an edge case that is introduced in v2.6.4.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.9.2...v2.9.3
A small improvement in atomFamily for edge use cases.
A small improvement in atomFamily for edge use cases.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.9.1...v2.9.2
This patch version includes various fixes. Huge thanks to contributors!
This patch version includes various fixes. Huge thanks to contributors!
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.9.0...v2.9.1
This version introduces a new core implementation. All tests are passing but there can be some regressions due to missing tests. Please feel free to r
This version introduces a new core implementation. All tests are passing but there can be some regressions due to missing tests. Please feel free to report such cases and let's improve test coverage.
The benefit with the new implementation:
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.8.4...v2.9.0
This changes the behavior of async atom with abort signal on unmount to fix some use cases.
This changes the behavior of async atom with abort signal on unmount to fix some use cases.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.8.3...v2.8.4
The improvement for atomWithStorage in v2.8.2 contained a bug, which is fixed in this version.
The improvement for atomWithStorage in v2.8.2 contained a bug, which is fixed in this version.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.8.2...v2.8.3
This fixes another edge case and improves utils for more flexibility.
This fixes another edge case and improves utils for more flexibility.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.8.1...v2.8.2
This fixes a regression in v2.6.4 and a regression in v2.7.0.
This fixes a regression in v2.6.4 and a regression in v2.7.0.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.8.0...v2.8.1
This version introduces a new feature atomWithLazy and deprecates useReducerAtom and freezeAtomCreator. It also introduces an experimental store imple…
This version introduces a new feature atomWithLazy and deprecates useReducerAtom and freezeAtomCreator. It also introduces an experimental store implementation in jotai/experimental.
selectAtomselectAtom will no longer internally unwrap promises. To migrate to the new api, use the unwrap utility from jotai/utils package.
// suppose we have this
const baseAtom = atom(Promise.resolve({ id: 0, name: 'test' }))
// previously selectAtom would internally unwrap promises.
const idAtom = selectAtom(
baseAtom,
({ name }) => name,
(prev, curr) => prev.id === curr.id
)
// instead, you need to import `unwrap` from 'jotai/utils' and pass the unwrapped atom
import { unwrap } from 'jotai/utils'
...
const idAtom = selectAtom(
unwrap(baseAtom),
({ name }) => name,
(prev, curr) => prev.id === curr.id
)
useReducerAtomhttps://jotai.org/docs/recipes/use-reducer-atom
freezeAtomCreatorhttps://jotai.org/docs/guides/debugging#freezeatomcreator
store2.ts by @dai-shi in https://github.com/pmndrs/jotai/pull/2463Full Changelog: https://github.com/pmndrs/jotai/compare/v2.7.2...v2.8.0
refactor(vanilla): moved (un)mount guards into their respective functions. (suggestion) by @iwoplaza in https://github.com/pmndrs/jotai/pull/2457
Mostly refactors.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.7.1...v2.7.2
This fixes a regression in v2.7.0.
This fixes a regression in v2.7.0.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.7.0...v2.7.1
We've improved the use of WeakMap for better memory management. Please report to us if any regressions are found.
We've improved the use of WeakMap for better memory management. Please report to us if any regressions are found.
pendingMap a WeakMap for better memory management by @dai-shi in https://github.com/pmndrs/jotai/pull/2396Full Changelog: https://github.com/pmndrs/jotai/compare/v2.6.5...v2.7.0
fix(types): useAtom with one type argument for primitive atoms by @dai-shi in https://github.com/pmndrs/jotai/pull/2386
Some type improvements!
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.6.4...v2.6.5
Performance improvement! Check it out!
Performance improvement! Check it out!
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.6.3...v2.6.4
Some improvements in core and utils 👏
Some improvements in core and utils 👏
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.6.2...v2.6.3
Some improvements for atomWithStorage. Feedback is welcome.
Some improvements for atomWithStorage. Feedback is welcome.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.6.1...v2.6.2
This version has two minor improvements for library authors. It's wonderful to see Jotai ecosystem growing. No major bugs have been reported lately. I
This version has two minor improvements for library authors. It's wonderful to see Jotai ecosystem growing. No major bugs have been reported lately. It's fairly okay to say the current version is pretty stable.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.6.0...v2.6.1
We can now directly use in React Server Components. 🎉
We can now directly use <Provider> in React Server Components. 🎉
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.5.1...v2.6.0
This fixes some small issues in jotai/utils.
This fixes some small issues in jotai/utils.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.5.0...v2.5.1
This fixes some bugs, one of which was critical for jotai-effect. It also adds a new internal capability that may help extensions such as jotai-scope.
This fixes some bugs, one of which was critical for jotai-effect. It also adds a new internal capability that may help extensions such as jotai-scope.
this for atom config by @dai-shi in https://github.com/pmndrs/jotai/pull/2186Full Changelog: https://github.com/pmndrs/jotai/compare/v2.4.3...v2.5.0
This fixes a regression in an edge case, which has existed since v2.1.1.
This fixes a regression in an edge case, which has existed since v2.1.1.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.4.2...v2.4.3
There was a bug in v2.4.0 (and v2.4.1) in an edge case, which is now fixed.
There was a bug in v2.4.0 (and v2.4.1) in an edge case, which is now fixed.
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.4.1...v2.4.2
Your coding agent can read these notes before it upgrades. Set up the MCP server →