Skip to main content


yarn add mobx-keystone

This library requires a more or less modern JavaScript environment to work, namely one with support for:

  • MobX 6, 5, or 4 (with its gotchas)
  • Proxies
  • Symbols
  • WeakMap/WeakSet

In other words, it should work on mostly anything except it won't work in Internet Explorer.

If you are using TypeScript, then version 4.2.0+ is recommended, though it might work with older versions.

Transpiler configuration

This library uses JavaScript decorators and class properties which are supported via the following transpiler configurations:

// ...
"compilerOptions": {
// ...
"experimentalDecorators": true,
// MobX 5/6
"useDefineForClassFields": true
// MobX 4
"useDefineForClassFields": false