Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

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

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Redux
  3. redux-act

redux-act

Apache-2.0JavaScriptv1.8.0

An opinionated library to create actions and reducers for Redux, using actions as references instead of string constants.

GitHubGitHub
1.5k stars59 forks0 contributors

What is redux-act?

Redux Act is an opinionated library for Redux that provides utilities to create actions and reducers with less boilerplate. It generates unique action types automatically and allows reducers to reference action creators directly, eliminating the need for string constants and reducing common errors in Redux applications.

Target Audience

Developers building applications with Redux who want to reduce boilerplate, avoid string constant mismatches, and improve maintainability in their state management code.

Value Proposition

It offers a safer and more concise alternative to traditional Redux patterns by using action creators as reducer keys, providing built-in batch action support, and maintaining full compatibility with Redux devtools and middleware.

Overview

An opinionated lib to create actions and reducers for Redux

Use Cases

Best For

  • Reducing boilerplate in Redux action and reducer definitions
  • Preventing action type string mismatches in large codebases
  • Dynamically adding or removing actions from reducers at runtime
  • Batching multiple actions to optimize React component re-renders
  • Building Redux applications with TypeScript for better type safety
  • Creating serializable actions for cross-client/server environments

Not Ideal For

  • Projects requiring explicit, human-readable action types for logging or debugging without generated IDs
  • Teams heavily invested in classic Redux with string constants and switch-case reducers, where migration would be disruptive
  • Applications targeting IE11 without polyfill setup for String.prototype.startsWith

Pros & Cons

Pros

Eliminates String Constants

Uses action creators directly as reducer keys, preventing common mismatches and errors, as emphasized in the FAQ to avoid 'end of mankind' scenarios.

Reduces Boilerplate

Automatically generates unique action types and provides concise syntax for creating reducers, cutting down code compared to traditional Redux patterns.

Dynamic Action Management

Supports adding or removing actions from reducers at runtime using on and off methods, enabling flexible state updates without restarting.

Batch Action Optimization

Groups multiple actions into a single dispatch to reduce re-renders, with built-in support documented in the batch section for performance gains.

TypeScript Support

Includes built-in typings for improved type safety, though the README notes caveats with payload reducers limiting full coverage.

Cons

IE11 Polyfill Burden

Requires polyfills for String.prototype.startsWith, adding setup complexity for older browser support as mentioned in the install notes.

Batch Action Pitfalls

When using assigned actions with batch, developers must remember to use the raw method to prevent auto-dispatch, introducing error-prone steps.

TypeScript Limitations

Payload reducers aren't fully typed, reducing type safety in advanced use cases, as admitted in the TypeScript caveats section.

Frequently Asked Questions

Quick Stats

Stars1,476
Forks59
Contributors0
Open Issues3
Last commit2 years ago
CreatedSince 2015

Tags

#flux#reducers#action-creators#frontend#typescript#javascript#react#state-management#redux

Included in

Redux391
Auto-fetched 1 day ago

Related Projects

redux-crudredux-crud

A set of standard actions and reducers for Redux CRUD Applications

Stars620
Forks55
Last commit7 years 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