Tools & resources
Built by the community
- Atom-store — a Clojure-inspired atom implementation in JavaScript with configurability for external persistence.
- Chai Immutable — if you are using the Chai Assertion Library, this provides a set of assertions to use against Immutable.js collections.
- Fantasy-land — specification for interoperability of common algebraic structures in JavaScript.
- Immutagen — a library for simulating immutable generators in JavaScript.
- Immutable-cursor — immutable cursors incorporating the Immutable.js interface over a Clojure-inspired atom.
- Immutable-ext — Fantasy Land extensions for Immutable.js.
- Immutable-js-tools — util tools for Immutable.js.
- Immutable-Redux —
redux-immutablecreates an equivalent of Redux'scombineReducersthat works with Immutable.js state. - Immutable-Treeutils — functional tree traversal helpers for Immutable.js data structures.
- Irecord — an immutable store that exposes an RxJS observable. Great for React.
- Mudash — Lodash wrapper providing Immutable.js support.
- React-Immutable-PropTypes — PropType validators that work with Immutable.js.
- Redux-Immutablejs — Redux Immutable facilities.
- Rxstate — simple opinionated state management library based on RxJS and Immutable.js.
- Transit-Immutable-js — Transit serialisation for Immutable.js. See also Transit-js.
Have an additional tool designed to work with Immutable.js? Submit a PR to add it to this list in alphabetical order.
Debugging in the browser
Browser DevTools show the internal structure of a collection rather than its
contents. The Immutable.js browser extension installs a
custom formatter so a List reads like a list, right in the console.
Learn more
- The wiki contains articles on additional specific topics.
- The Playground runs any snippet in the browser, with no install.
- Changes are tracked as GitHub releases.
Contributing
Use GitHub issues for requests. Can't find something in the docs? Open an issue.
We actively welcome pull requests — learn how to contribute.
Immutable.js is maintained within the Contributor Covenant's Code of Conduct, and is MIT-licensed.
Thanks
Lee Byron, for creating Immutable.js.
Phil Bagwell, for his inspiration and research in persistent data structures.
Hugh Jackson, for providing the npm package name. If you're looking for his unsupported package, see this repository.