This component is a Redux middleware that implements history as a directed-acyclic-graph (DAG) as opposed to the traditional stack-based implementation.

2 years after

Build Status

Redux DAG History

Nonlinear History

This project is a redux middleware that provides an alternative take on application history. Independent threads of user exploration are tracked as separate "branches" in a state DAG (Directed Acyclic Graph) inspired roughly by Git version control. Some additional concepts have been implemented, including:

  • Pinning states of interest
  • Checking for state equivalency before inserting a new state
  • Tracking alternate routes to a state
  • Import/Export