Our project is a prime candidate for using React for our frontend, so let's outline our requirements for the frontend: One single React application with reusable components and Hooks and context for state saving. Hooks are a new concept compared to our previous use of React. Added in React 16.8, Hooks are functions that allow you to manipulate the state and context for state management within a functional component.
In addition to our handcrafted React app, we'll incorporate a few additional pre-built libraries to simplify our project and to utilize ready-made tools. D3.js is a powerful graphics and data visualization library that we'll leverage for our map. Quill is a rich text editor that will allow you to write the entries with text formatting, and upload and place photos.
It's up to you to decide whether you'd like to start with npx create-react-app or use the scaffolded code provided in the Step 1 folder in the chapter-19 directory...