Narcoleptic's Patch Mangler

    almin
    TypeScript icon, indicating that this package has built-in type declarations

    0.19.0 • Public • Published

    Almin Build Status

    Almin.js logo

    Installation

    npm install almin
    

    You'll also need a Promise polyfill for older browsers.

    npm install es6-promise
    

    Usage

    📝 Please See https://almin.js.org/ for details.

    What is Almin?

    Almin provides Flux/CQRS patterns for JavaScript applications.

    It aims to create a scalable app.

    Overview of almin-architecture

    The above figure is overview of Almin architecture that is similar to CQRS(Command Query Responsibility Segregation).

    But, Almin is not a framework, provides only these components

    • Dispatcher
    • Context
    • UseCase
    • Store
    • StoreGroup

    Other components like Domain, Repository and State are written by you!

    Of course, Almin help you to write other components.

    Also, You may notice that these components are similar to Flux architecture.

    Almin is also a flux implementation library. 👍

    Almin Flux Redux
    Dispatcher Dispatcher store.dispatch
    Context Container Middleware/React Redux
    UseCase ActionCreator Actions
    Store Store Store
    StoreGroup Container combineReducers
    (State) Store Reducer
    (Domain)
    (Repository)

    📝 State, Domain and Repository is optional on Almin, because the best for these components is vary based on application.

    Almin has not a perfect solution for an application, but we can write code thinking.

    We are going to learn two architectures(Flux/CQRS) using Almin :)

    Running tests

    Run tests in Node.js

    npm test
    

    Run tests in Browser

    npm run test:browser
    

    Run tests in Sauce Labs

    # Need "~/.zuulrc" for using Sauce Labs
    npm run test:saucelabs
    

    Contributing

    Please see CONTRIBUTING.md for more details.

    1. Fork it!
    2. Create your feature branch: git checkout -b my-new-feature
    3. Commit your changes: git commit -am 'Add some feature'
    4. Push to the branch: git push origin my-new-feature
    5. Submit a pull request :D

    License

    MIT

    Install

    npm i almin

    DownloadsWeekly Downloads

    72

    Version

    0.19.0

    License

    MIT

    Unpacked Size

    444 kB

    Total Files

    197

    Last publish

    Collaborators

    • azu