Git Product home page Git Product logo

esp-js's Introduction

Build Status lerna

Evented State Processor (ESP)

ESP gives you the ability to manage changes to a model in a deterministic event driven manner. It does this by adding specific processing workflow around changes to a model's state. It was born out of the need to manage complex UI and/or server state.

At its core is a Router which sits between event publishers and the model. Those wanting to change the model publish events to the Router. The model observes the events and applies the changes. The model is then dispatched to model observers so new state can be applied. It's lightweight, easy to apply and puts the model at the forefront of your design.

ESP 2.0 adds a host of other additional libraries to help you build composite single page application with React. It allows you to use either OO, and/or immutable pattens (Redux like) for modeling independent and decoupled screens within your composite application. Features include:

  • The core event router - esp-js npm
  • Dependency injection container - esp-js-di npm
  • Module loading system and composite application toolbox - esp-js-ui npm
  • React support - esp-js-react npm
  • Immutable state models - esp-js-polimer npm

It's built on typescript and type definitions are included in the npm packages.

For full documentation please see https://esp.github.io/.

esp-js's People

Contributors

keithbloom avatar keithwoods avatar koteus avatar leecampbell avatar rdingwall avatar rrmarriott avatar voliva avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.