Nano Stores React

React integration for [Nano Stores], a tiny state manager
with many atomic tree-shakable stores.

  • Small. Less than 1 KB. Zero dependencies.
  • Fast. With small atomic and derived stores, you do not need to call
    the selector function for all components on every store change.
  • Tree Shakable. The chunk contains only stores used by components
    in the chunk.
  • Was designed to move logic from components to stores.
  • It has good TypeScript support.
import { useStore } from '@nanostores/react'

import { profile } from '../stores/profile.js'
import { User } from '../stores/user.js'

export const Header = () => {
  const { userId } = useStore(profile)
  const currentUser = useStore(User(userId))
  return <header>{currentUser.name}</header>
}

GitHub

https://github.com/nanostores/react