Ross ROSS = Recommend OSS · open-source software intelligence for agents

immutable-js/immutable-js

Immutable persistent data collections for Javascript which increase efficiency and simplicity. observed · 2026-08-28

github.com/immutable-js/immutable-js · homepage · TypeScript · MIT (permissive) observed · 2026-08-28

Health v2 · maintenance only

98/100

  • Activity 98
  • Release rhythm 98
  • Longevity 100
How is this computed?

round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.

  • gap_med: 11
  • age_days: 4445
  • days_rel: 19
  • days_push: 16
  • n_releases_24m: 18

Full methodology

Adoption not part of the score

33040 stars · 1859 forks observed · 2026-08-28

What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-29, confidence not recorded

Immutable.js provides persistent immutable data collections (List, Map, Set, Stack, Record, and lazy Seq) for JavaScript and TypeScript, using structural sharing via hash tries for efficiency. It enables simpler state management, cheap change detection, and memoization with a familiar JavaScript-first API and first-class TypeScript types.

Use cases

  • manage immutable application state in React or Redux
  • avoid defensive copying when updating nested data structures
  • implement undo/redo with cheap snapshots of state
  • efficiently chain map and filter over large or infinite sequences with lazy Seq
  • deeply read and update nested data with getIn/setIn/updateIn
  • compare collections by value equality for memoization and change detection

When to choose

  • you need persistent data structures with structural sharing in JavaScript or TypeScript
  • your app benefits from value-based equality, memoization, or undo/redo
  • you want zero dependencies and built-in TypeScript types
  • you work with large collections where copying would be expensive

When to avoid

  • your project only needs simple frozen objects or spread-based immutability
  • you rely heavily on native ES6 Map/Set interop without conversion overhead
  • bundle size is critical and you only use a small subset of features
  • your team prefers Immer-style mutable drafts over functional collections

Facets

library · maturity stable

serialization developer-tools web-development frontend data-science browser cross-platform immutable-data persistent-data-structures functional-programming typescript state-management react redux zero-dependencies algorithms nodejs web-server

10 sources

Member repositories

RepositoryRoleHealth v2
immutable-js/immutable-jsmain98

For agents

markdown · JSON · MCP: product_card(name="immutable-js/immutable-js")

Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem