<commit_before># React Router [![Travis][build-badge]][build]

[build-badge]: https://img.shields.io/travis/ReactTraining/react-router/v4.svg?style=flat-square
[build]: https://travis-ci.org/ReactTraining/react-router

<img src="/logo/Vertical@2x.png" height="150"/>

Declarative routing for [React](https://facebook.github.io/react).

React Router keeps your UI in sync with the URL. Make the URL your first thought, not an after-thought.

## Docs

API docs are [here](https://reacttraining.com/react-router/api).

## Installation

`npm install --save react-router@next` or `yarn add react-router@next`

You can also install specific router package via `react-router-[package]@next`, all posible packages are avaliable [here](https://github.com/ReactTraining/react-router/tree/v4/packages)

## v4 FAQ

### Why a major version bump?

**tl;dr** Declarative Composability.

We've never been this excited about React Router. Like you, we've learned a lot about React since we first picked it up. We built a Router the best we knew how along the way. What we've learned most is that we love React because of its **declarative composability**.<commit_msg>Fix tiny grammar/spelling issue in readme (#4440)<commit_after># React Router [![Travis][build-badge]][build]

[build-badge]: https://img.shields.io/travis/ReactTraining/react-router/v4.svg?style=flat-square
[build]: https://travis-ci.org/ReactTraining/react-router

<img src="/logo/Vertical@2x.png" height="150"/>

Declarative routing for [React](https://facebook.github.io/react).

React Router keeps your UI in sync with the URL. Make the URL your first thought, not an after-thought.

## Docs

API docs are [here](https://reacttraining.com/react-router/api).

## Installation

`npm install --save react-router@next` or `yarn add react-router@next`

You can also install a specific router package via `react-router-[package]@next`. All possible packages are available [here](https://github.com/ReactTraining/react-router/tree/v4/packages).

## v4 FAQ

### Why a major version bump?

**tl;dr** Declarative Composability.

We've never been this excited about React Router. Like you, we've learned a lot about React since we first picked it up. We built a Router the best we knew how along the way. What we've learned most is that we love React because of its **declarative composability**.
{'fraction_non_alphanumeric': 0.12435897435897436, 'fraction_numerical': 0.007692307692307693, 'mean_word_length': 4.780246913580247, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 10, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 2, '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': '4363870', 'n_tokens_mistral': 738, 'n_tokens_neox': 717, 'n_words': 248}