Upgrade BookBrainz site to React 16
The goal of this task is to move BookBrainz from using React 15, to using the newer React 16. This new release of React includes a completely rewritten reconciler, a new server renderer, many performance improvements and other new features.
Although React 16 is mostly backwards-compatible, it is important that you carefully check the list of breaking changes to make sure that it doesn't contain anything that would interfere with the functionality of our code.
Here are some resources that you can look at to find out more about changes in React 16. It would be a good idea to read them before doing any coding, to learn from the knowledge and experiences of others:
- Server-side rendering in React 16
- Lessons from migrating a large codebase to React 16 @ Discord
- Official React v16 announcement
Pre-existing knowledge of React is recommended for completing this task. Feel free to ask about React and other task-related questions in IRC!
To submit your work, clone the bookbrainz-site repository and create a new branch named "react-16-YOUR_GCI_USERNAME". Commit your changes, using small commits which make clear, self-contained changes, and using the conventions here. Finally, push your work to GitHub and create a new Pull Request.