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

immerjs/immer

Create the next immutable state by mutating the current one observed · 2026-08-28

github.com/immerjs/immer · homepage · JavaScript · 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-02. Adoption (stars, forks) is never an input.

  • gap_med: 3.5
  • age_days: 3169
  • days_rel: 14
  • days_push: 14
  • n_releases_24m: 23

Full methodology

Adoption not part of the score

28980 stars · 880 forks observed · 2026-08-28

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

Immer is a tiny JavaScript library that lets you work with immutable state by writing code that mutates a draft copy, producing the next immutable state tree. It is widely used with React state, Redux reducers, and configuration management.

Use cases

  • simplify immutable updates in redux reducers
  • manage react state without spread boilerplate
  • create next immutable state by mutating current one
  • detect accidental mutations of state objects
  • perform deep updates on nested state trees
  • share unchanged parts of state trees in memory

When to choose

  • you use React or Redux and want ergonomic immutable updates
  • you need efficient structural sharing and change detection
  • you want automatic detection of accidental mutations

When to avoid

  • your state is small and simple enough that spread operators suffice
  • you work outside the JavaScript ecosystem
  • you need truly persistent data structures rather than copy-on-write snapshots

Facets

library · maturity stable

state-management serialization frontend web-development developer-tools browser immutable-state redux react copy-on-write javascript nodejs

2 sources

Member repositories

RepositoryRoleHealth v2
immerjs/immermain98

For agents

markdown · JSON · MCP: product_card(name="immerjs/immer")

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