"A JavaScript framework that manages application state in a scalable, predictable and testable way"

Component Hierarchy

Representational
Type of component that's concerned with how things look. Renders just like any other React component and doesn't care if Redux used at all.

Container
Concerned with how things work. It interacts with and receives data from the object storing state. Role is to pass data and behavior down to the representational components which then renders.

Representational categories

Logical

  • React component
  • Manages own state
  • May take place in React lifecycle

Pure

  • Stateless, do not manage own state
  • Rely on Props
  • Pure functions (where the return value is only determined by its input values, without observable side effects)
  • Don't take place in React Lifecycle