easy-peasy

Easy peasy global state for React

Github stars Tracking Chart

npm
MIT License
Travis
Codecov

npm install easy-peasy

Step 1 - Create your store

const store = createStore({
  todos: {
    items: ['Create store', 'Wrap application', 'Use store'],
    add: action((state, payload) => {
      state.items.push(payload)
    })
  }
});

Step 2 - Wrap your application

function App() {
  return (
    <StoreProvider store={store}>
      <TodoList />
    </StoreProvider>
  );
}

Step 3 - Use the store

function TodoList() {
  const todos = useStoreState(state => state.todos.items)
  const add = useStoreActions(actions => actions.todos.add)
  return (
    <div>
      {todos.map((todo, idx) => <div key={idx}>{todo}</div>)}
      <AddTodo onAdd={add} />
    </div>
  )
}

Features

  • Zero configuration
  • No boilerplate
  • React hooks based API
  • Computed properties - i.e. derived data
  • Data fetching / side effects
  • Persist state to session/local storage
  • Testing helpers
  • Extensive TypeScript support
  • Global, shared, or component level stores
  • React Native supported
  • Redux Dev Tools supported
  • Hot Reloading supported

Introduction

Easy Peasy provides you with an intuitive API to quickly and easily manage the state for your React application. Batteries are included - no configuration is required to support derived state, API calls, performance optimisation, developer tools etc.

Documentation

See the official website for tutorials, API docs, recipes, and more.

Backers ❤️

Extreme gratitude to all our backers! [Become a backer].

Main metrics

Overview
Name With Ownerctrlplusb/easy-peasy
Primary LanguageJavaScript
Program languageJavaScript (Language Count: 4)
Platform
License:MIT License
所有者活动
Created At2018-10-21 20:52:18
Pushed At2025-08-21 16:09:42
Last Commit At2025-03-22 11:39:25
Release Count113
Last Release Namev6.1.0 (Posted on )
First Release Namev0.1.0 (Posted on 2018-10-22 13:59:45)
用户参与
Stargazers Count5k
Watchers Count32
Fork Count193
Commits Count742
Has Issues Enabled
Issues Count553
Issue Open Count10
Pull Requests Count205
Pull Requests Open Count3
Pull Requests Close Count185
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private