nrgy
v0.0.45
Published
The library for reactive programming using efficient computing and MVC/MVVM patterns
Downloads
290
Maintainers
Readme
nrgy
The energy for reactive programming with MVC/MVVM patterns
Overview
The library provides components for programming with reactive state and effects using MVC/MVVM design patterns.
Core components include Atoms (stores), Signals (event emitters), Scopes and Effects (subscriptions), which form an efficient computation graph.
Additionally, the library includes an MVC/MVVM feature, that provides building blocks for programming Controllers for a business layer and View Models for a presentation layer. Controllers and view models can be extended using other features in an optional way.
Other parts of the library include integrations with third-party tools and frameworks. At the moment the following are supported:
- React - a library for creating web user interfaces
- Ditox.js - a dependency injection container and modules
- RxJS - a reactive programming library for composing asynchronous or callback-based code
- RxEffects - the predecessor of Nrgy.js, a reactive state and effect management library based on RxJS
All of these integrations are optional and can be used independently.
The core and MVC components are framework-agnostic and can be used by web and server applications, libraries and CLI tools.
Main Features
- Reactive state and effects
- Fast and efficient computation graph
- Tools for MVC/MVVM patterns
- Framework-agnostic core components
- Developer-friendly functional API
- Typescript typings
Installation
Nrgy is the all-in-one package with optional dependencies for particular integrations.
npm install nrgy
Install additional dependencies according to the following table:
| Import | Dependencies | Command |
| ------------------ | ------------------ | ------------------- |
| nrgy
| No dependencies | |
| nrgy/mvc
| No dependencies | |
| nrgy/mvc-react
| React.js | npm i react
|
| nrgy/react
| React.js | npm i react
|
| nrgy/ditox
| Ditox.js | npm i ditox
|
| nrgy/ditox-react
| Ditox.js, React.js | npm i ditox react
|
| nrgy/rx-effects
| RxJS, RxEffects | npm i rx-effects
|
| nrgy/rxjs
| RxJS | npm i rxjs
|
| nrgy/rxjs-react
| RxJS, React.js | npm i rxjs react
|
Documentation
Find more docs at https://nrgy.js.org