Skip to content

epicweb-dev/upgrade-react-router

Repository files navigation

Bring your React app into the modern age

In this workshop, we'll start with an app running React Router v5.0 and incrementally upgrade it to v6 and finally to v7 of React Router which will open up modern React features to our app.



NOTICE: This is incomplete.

I may finish making it a proper workshop with exercises and all that, but for now, it's just a couple checkpoints. You can run it locally and check the diff (or just check the diff tab in the deployed version). You'll want to check v5 vs v6 and then v6 vs v7 and then one more incremental improvement on v7.

Build Status GPL 3.0 License Code of Conduct

Prerequisites

  • Experience with older versions of React Router

Pre-workshop Resources

Here are some resources you can read before taking the workshop to get you up to speed on some of the tools and concepts we'll be covering:

System Requirements

  • git v2.18 or greater
  • NodeJS v18 or greater
  • npm v8 or greater

All of these must be available in your PATH. To verify things are set up properly, you can run this:

git --version
node --version
npm --version

If you have trouble with any of these, learn more about the PATH environment variable and how to fix it here for windows or mac/linux.

Setup

This is a pretty large project (it's actually many apps in one) so it can take several minutes to get everything set up the first time. Please have a strong network connection before running the setup and grab a snack.

Warning: This repo is very large. Make sure you have a good internet connection before you start the setup process. The instructions below use --depth to limit the amount you download, but if you have a slow connection, or you pay for bandwidth, you may want to find a place with a better connection.

Follow these steps to get this set up:

git clone --depth 1 https://github.com/epicweb-dev/upgrade-react-router.git
cd upgrade-react-router
npm run setup

If you experience errors here, please open an issue with as many details as you can offer.

The Workshop App

Learn all about the workshop app on the Epic Web Getting Started Guide.

Kent with the workshop app in the background