JavaScript

State management

This React application manages application state using Redux, makes it immutable with ImmutableJS and keeps access performant via reselect.

For managing asynchronous flows (e.g. logging in) we use redux-saga.

For routing, it uses react-router in combination with react-router-redux.

Included as well is a generator for components, containers, sagas, routes and selectors. Run npm run generate to choose from the available generators, and automatically add new parts of your application!

Note: If you want to skip the generator selection process, npm run generate <generator> also works. (e.g. npm run generate route)

Learn more

Architecture: components and containers

We adopted a split between stateless, reusable components called components and stateful parent components called containers.

Learn more

See this article by Dan Abramov for a great introduction to this approach.