https://github.com/trovit/reffects
Reffects is a Javascript framework for developing SPAs using an event-driven unidirectional flow architecture with a synchronous event bus with effects and coeffects.
https://github.com/trovit/reffects
coeffects effects event-bus javascript reffects
Last synced: 6 months ago
JSON representation
Reffects is a Javascript framework for developing SPAs using an event-driven unidirectional flow architecture with a synchronous event bus with effects and coeffects.
- Host: GitHub
- URL: https://github.com/trovit/reffects
- Owner: trovit
- License: mit
- Created: 2019-04-08T09:22:40.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2024-05-02T11:19:16.000Z (about 2 years ago)
- Last Synced: 2024-05-03T12:51:48.857Z (about 2 years ago)
- Topics: coeffects, effects, event-bus, javascript, reffects
- Language: JavaScript
- Homepage:
- Size: 9.02 MB
- Stars: 30
- Watchers: 7
- Forks: 15
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
Reffects
A Javascript framework for developing SPAs using an event-driven unidirectional-flow functional architecture.
## Documentation
Reffects is a Javascript framework for developing SPAs using an event-driven unidirectional-flow functional architecture.
It's based on ClojureScript's re-frame. It promotes a functional programming style by using the *effects as data* pattern, in which event handlers are pure functions, and effects and coeffects are used to manage side effects and side causes, respectively.
This repository contains all the existing components of the reffects framework:
- [Reffects](/packages/reffects/README.md), the core framework for developing applications in a functional style using events, effects and coeffects.
- [Reffects store](/packages/reffects-store/README.md), an implementation of a store to use `reffects` inside a React application.
- [Batteries](/packages/batteries/README.md), some common effects/coeffects that can be useful for starting your application.
You can see an example of a small application using `reffects` in the [`with-react-todos`](/examples/with-react-todos/README.md) folder
## Contributing
Checkout [our guide](/CONTRIBUTING.md) in case you want to propose some changes to `reffects`.