redouter
Redouter is a library of functions that support an opinion of how universal web applications should be implemented using React, Redux and react-router.
This is essentially a work of original research, and as such it will remain versioned under 0.x until I determine that it works well enough in various scenarios.
For more details on the various APIs, click here.
notes
Since this relies heavily on a specific combination of libraries, react
, react-router
and redux
are declared as peerDependencies
. Make sure your app already declares the abovementioned as normal dependencies.
motivation
Much ado has been written and said about React, a view library that promotes unidirectional data flow (via Flux architecture) and provides a universal view rendering mechanism.
For all its merits, React is ultimately just a view library, which has led to a proliferation of potpourris of libraries to form a complete MVC framework.
One of the more popular combinations uses React, Redux and React Router. However, examples are few and, in my opinion, more complicated than they need to be.
I decided to approach the entire universal conundrum from a radically different angle, one which some might view as a step backwards - to implement dumb components almost universally and shift all universal logic server-side.
trivia
I needed a word that represented the combination of all three libraries (react, redux and react-router) which
- didn't already exist
- was easily recognizable as related to React
After mucking around with word combinations I discovered redouter
is an actual word, a French word that means "to fear". Not the best representation, but it will do for now. I don't have high hopes, but perhaps some day this will be a redoubtable framework that powers universal applications.