https://levelup.gitconnected.com/how-to-use-the-usereducer-react-hook-to-share-data-between-components-83123c9580a4