effector-react alternatives and similar libraries
Based on the "Data Store" category.
Alternatively, view effector-react alternatives based on common mentions on social networks and blogs.
-
reflux
A simple library for uni-directional dataflow application architecture with React extensions inspired by Flux -
redux-batched-actions
redux higher order reducer + action to reduce actions under a single subscriber notification -
redux-batched-subscribe
store enhancer for https://github.com/reactjs/redux which allows batching subscribe notifications. -
fluorine-lib
DISCONTINUED. Reactive state and side effect management for React using a single stream of actions. -
fireproof
Realtime database, runs anywhere. Install Fireproof in your front-end app or edge function, and sync data via any backend. -
react-redux-provide
DISCONTINUED. Bridges the gap between Redux and the declarative nature of GraphQL/Relay. Share, manipulate, and replicate application state across any number of components. -
synergies
Create a performant distributed context state for React by composing reusable state logic.
CodeRabbit: AI Code Reviews for Developers
Do you think we are missing an alternative of effector-react or a related project?
README
☄️ effector
Business logic with ease
Visit effector.dev for docs, guides and examples
Table of Contents
<!-- START doctoc generated TOC please keep comment here to allow auto update --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
- Introduction
- Installation
- Documentation
- Packages
- Articles
- Community
- Online playground
- DevTools
- More examples in documentation
- Learn more
- Support us
- Contributors
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
Introduction
Effector implements business logic with ease for Javascript apps (React/React Native/Vue/Svelte/Node.js/Vanilla), allows you to manage data flow in complex applications. Effector provides best TypeScript support out of the box.
Effector follows five basic principles:
- Application stores should be as light as possible - the idea of adding a store for specific needs should not be frightening or damaging to the developer.
- Application stores should be freely combined - data that the application needs can be statically distributed, showing how it will be converted in runtime.
- Autonomy from controversial concepts - no decorators, no need to use classes or proxies - this is not required to control the state of the application and therefore the api library uses only functions and plain js objects
- Predictability and clarity of API - a small number of basic principles are reused in different cases, reducing the user's workload and increasing recognition. For example, if you know how .watch works for events, you already know how .watch works for stores.
- The application is built from simple elements - space and way to take any required business logic out of the view, maximizing the simplicity of the components.
Installation
npm add effector
React
To getting started read our article how to write React and Typescript application.
npm add effector effector-react
Vue
npm add effector effector-vue
Svelte
Svelte works with effector out of the box, no additional packages needed. See word chain game application written with svelte and effector.
CDN
- https://www.jsdelivr.com/package/npm/effector
- https://cdn.jsdelivr.net/npm/effector/effector.cjs.js
- https://cdn.jsdelivr.net/npm/effector/effector.mjs
- https://cdn.jsdelivr.net/npm/effector-react/effector-react.cjs.js
- https://cdn.jsdelivr.net/npm/effector-vue/effector-vue.cjs.js
Documentation
For additional information, guides and api reference visit our documentation site
Packages
Articles
- Why I choose Effector instead of Redux or MobX
- Effector — State Manager You Should Give a Try
- Effector vs. Vuex. Which storage management is better for VueJS app?
- Powerful and fast state manager
- Testing api calls with effects and stores
- Effector's beginner guide
- The best part of Effector
Community
- awesome-effector a curated list of awesome effector packages, videos and articles
- Telegram (@effector_en)
- Telegram 🇷🇺 (@effector_ru)
- dev.to
- Gitter
- Discord
- Add a GitHub Topic
effector
to your project's home page
Online playground
You can try effector with online playground
Code sharing, Typescript and react supported out of the box. Playground repository
DevTools
Use effector-logger for printing updates to console, displaying current store values with ui or connecting application to familiar redux devtools
More examples in documentation
Learn more
Support us
- Read more articles on a patreon page
- Donate on OpenCollective
- Be a sponsor on Github Sponsors
Your support allows us to improve the developer experience 🧡.
Contributors
Dmitry andretshurotshka Sergey Sova popuguy Egor Alexander Khoroshikh Valeriy Kobzar Ruslan @doasync Illia Osmanov Igor Kamyşev Yan Maxim Igor Ryzhov Arthur Irgashev Viktor Ilya Arutiunian Artem Dmitrij Shuleshov Nikita Nafranets Ivan Savichev Aleksandr Osipov bakugod Victor Didenko Viktor Pasynok Andrei Kirill Mironov Ivan Aleksandr Belov Anton Yurovskykh Denis Sikuler Renat Sagdeev Samir Sozonov Stanislav Tauyekel Kunzhol Aldiyar Batyrbekov cqh Ivanov Vadim xaota Andrey Antropov 0xflotus 7iomka Abel Soares Siqueira Aleksandr Grigorii Alex Arro Alek Anokhin Alexander Alexandrsv Anton Kosykh rymarchikbot Ayu Denis Maushov Denis Skiba Dmitry Dudin Ed Prince Egor Gorbachev Gabriel Husek Infant Frontender Ivan Jan Keromnes Jesse Jackson Joel Bandi Paul Ekshmidt Lebedev Konstantin Ludovic Dem Mike Cann Oleg Oleh Pasha Grekovich bigslycat Rachael Dawn Raman Aktsisiuk Robert Kuzhin Satya Rohith Sergey Belozyorcev The Gitter Badger Usman Yunusov VadimFilimonov Vasili Sviridov Vasili Svirydau Victor Victor Kolb Vic Vladislav Melnikov Vladislav Botvin Will Heslam Rasul Yesset Anatoly Kopyl Stanislav dmitryplyaskin Grigory Zaripov kanno Kirill Leushkin Marina Miyaoka roman Evgeny Zakharov vladthelittleone xxxxue