<commit_before># Routing via `react-router` and `react-router-redux`

## Usage

## Removing routing features<commit_msg>Add routing documentation<commit_after># Routing via `react-router` and `react-router-redux`

`react-router` is the de-facto standard routing solution for react applications. The thing is that with redux and a single state tree, the URL is part of that state. `react-router-redux` takes care of synchronizing the location of our application with the application state.

(See the [`react-router-redux` documentation](https://github.com/reactjs/react-router-redux) for more information)

## Usage

To add a new route, use the generator with `$ npm run generate`, and/or add the route manually to the `app/routes.js` file. This is what a standard route looks like for a container, which we automatically generate for you:

```JS
{
  path: '/',
  getComponent: function get(location, cb) {
    require.ensure([], (require) => {
      injectAsyncReducer(store, 'home', require('HomePage/reducer').default);
      cb(null, require('HomePage').default);
    }, 'HomePage');
  },
}
```

> Don't worry about all of that `require.ensure` and `injectAsyncReducer` stuff, it's there to make code splitting routes work. See [this blog post](http://blog.mxstbr.com/2016/01/react-apps-with-pages) for more information!

To go to a new page use the `push` function by `react-router-redux`:

```JS
import { push } from 'react-router-redux';

push('/some/page');
```
{'fraction_non_alphanumeric': 0.12397820163487738, 'fraction_numerical': 0.004087193460490463, 'mean_word_length': 4.543396226415094, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 1, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6769943', 'n_tokens_mistral': 446, 'n_tokens_neox': 427, 'n_words': 162}