RWC is tiny framework for creating web-components that is heavily inspired by ELM. The approach is an attempt to find a balance between a scalable paradigm and performance.
npm install rwc --save
A component is made up of Four pure functions.
init()
: Provides the initial stateS
of the component.update(a: Action, s: State)
: A reducer function like that in [Redux] that takes an inputstate
and based on theaction
returns a new output state.view(e: Emitter, s: State)
: The view function converts thestate
into a virtual DOM tree. Additionally it also gets an instance of theEmitter
that can be used to handle events.command(a: Action, s: State)
: Thecommand()
function is like theupdate()
function except that it return an object of typeCommand
.