# lostpebble/pullstate

Simple state stores using immer and React hooks - re-use parts of your state by pulling it anywhere you like!

Repository: https://github.com/lostpebble/pullstate
Canonical: https://ross.abutalabs.com/products/pullstate
Homepage: https://lostpebble.github.io/pullstate
Language: TypeScript
License: MIT
License Family: permissive
Topics: react, hooks, reactjs, immer, state-management, state, server-side-rendering
Last push: 2026-06-02T20:25:59+00:00

## Health v2 (maintenance only)
Score: 61/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 85, release rhythm 8, longevity 100
- inputs: {"age_days": 2755, "days_push": 92, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1072, forks 22 (observed 2026-08-28T04:03:28.370970+00:00)

## What it is
Pullstate is a lightweight (~7KB) React state management library that lets you create simple stores and pull state anywhere in the React tree via hooks, using immer for immutable-friendly updates. It also supports server-side rendering and async actions with Suspense-based UI state control.

## Use cases
- manage global state in a react app with hooks
- update state immutably using immer
- share state across components without prop drilling
- server-side render react apps with state
- handle async action loading and error states in ui
- create lightweight stores without redux boilerplate

## When to choose
- you want a tiny, simple state solution with react hooks
- you prefer immer-style direct mutations for updates
- you need built-in ssr support and async actions
- your app is small-to-medium and redux feels too heavy

## When to avoid
- you need a large ecosystem with devtools, middleware, and plugins
- you rely on a library with frequent updates and a large community
- you need fine-grained reactive selectors outside react components
- you're building a non-react frontend

## Facets
- artifact type: library
- maturity: maintenance
- function: state-management, frontend-framework
- domain: frontend, web-development
- platform: cross-platform
- tags: react-hooks, immer, ssr, async-actions, typescript, nodejs, web-server

## Member repositories
- lostpebble/pullstate (main) score 61

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:03:28.370970+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T06:53:42.152740+00:00, confidence not recorded.
  - readme: https://github.com/lostpebble/pullstate (fetched 2026-08-28T04:03:28.370970+00:00, sha a4ae4cc927e7)
  - homepage: https://lostpebble.github.io/pullstate (fetched 2026-08-29T12:55:36.767401+00:00, sha ce9cc9875b27)
  - registry_npm: https://registry.npmjs.org/pullstate (fetched 2026-08-29T12:55:36.770486+00:00, sha b1132a912947)
- Data as of 2026-08-30T08:39:29.467469+00:00.
