Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Preact
  3. unistore

unistore

JavaScript3.5.2

A tiny 350b centralized state container with component bindings for Preact & React.

Visit WebsiteGitHubGitHub
2.9k stars135 forks0 contributors

What is unistore?

Unistore is a tiny centralized state container for JavaScript applications, specifically designed to work with Preact and React. It provides a Redux-like API for managing application state with a minimal footprint, solving the problem of state management complexity in lightweight frontend projects.

Target Audience

Frontend developers using Preact or React who need a simple, performant state management solution without the overhead of larger libraries.

Value Proposition

Developers choose Unistore for its extremely small size (350b core), familiar Redux-like patterns, and seamless integration with Preact and React, making it ideal for performance-sensitive applications.

Overview

🌶 350b / 650b state container with component actions for Preact & React

Use Cases

Best For

  • Adding state management to Preact applications with minimal bundle impact
  • Migrating from Redux to a lighter alternative
  • Building performance-focused React apps where bundle size matters
  • Projects needing simple global state without complex middleware
  • Applications that benefit from portable, functional action definitions
  • Integrating state management that can run in web workers via Stockroom

Not Ideal For

  • Applications requiring complex asynchronous state management with middleware like Redux-Thunk
  • Teams that depend on Redux's extensive ecosystem of devtools and third-party plugins
  • Projects needing built-in TypeScript support for type-safe state management

Pros & Cons

Pros

Tiny Bundle Size

Core library is only 350 bytes, and with Preact integration it totals around 650 bytes, as stated in the README, making it ideal for performance-focused applications where bundle size is critical.

Redux-Like Familiarity

Uses names and patterns similar to Redux, such as actions and reducers, which eases adoption for developers already experienced with Redux, as highlighted in the README's key features.

Portable Action Functions

Actions can be defined as pure functions and imported anywhere, promoting code reusability and clean separation, as shown in the README examples where actions are shared across components.

Web Worker Support

Can seamlessly run in a web worker via Stockroom, enabling background state management for improved performance, a feature mentioned in the README as a new addition.

Cons

Manual Async Handling

Lacks built-in middleware for async actions; developers must manage asynchronous operations manually using async functions or direct store.setState() calls, as evidenced in the README where async actions require careful state updates.

Extra Debugging Setup

Integration with Redux devtools requires importing a separate module and environment checks, adding setup overhead compared to Redux's out-of-the-box support, as described in the DEBUG section of the README.

Limited Third-Party Tools

Due to its minimal nature, Unistore has a smaller ecosystem than Redux, meaning fewer plugins and community resources for advanced features, which could require custom solutions.

Open Source Alternative To

unistore is an open-source alternative to the following products:

Redux
Redux

A predictable state container for JavaScript applications, commonly used with libraries like React for managing application state in a consistent way.

Frequently Asked Questions

Quick Stats

Stars2,851
Forks135
Contributors0
Open Issues36
Last commit4 years ago
CreatedSince 2017

Tags

#redux-alternative#state#frontend#javascript#preact#react#architecture#state-management#redux#performance

Built With

J
JavaScript

Links & Resources

Website

Included in

Preact987Tiny JS767
Auto-fetched 1 day ago

Related Projects

zustandzustand

🐻 Bear necessities for state management in React

Stars57,816
Forks2,040
Last commit3 days ago
JotaiJotai

👻 Primitive and flexible state management for React

Stars21,124
Forks710
Last commit1 day ago
Preact-urqlPreact-urql

The highly customizable and versatile GraphQL client with which you add on features like normalized caching as you grow.

Stars8,945
Forks474
Last commit9 days ago
nanostoresnanostores

A tiny (286 bytes) state manager for React/RN/Preact/Vue/Svelte with many atomic tree-shakable stores

Stars7,246
Forks142
Last commit6 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub