This project was bootstrapped with Create React App.
It is using eslint for a better development.
Packages/libs added:
- styled-components (with use of ThemeProvider)
- styled-reset
- @brainhubeu/react-carousel
- react-rating-stars-component
- redux
- react-redux
- react-lottie-player
I though it was great to:
- learn and apply the react portals concept: "Portals provide a first-class way to render children into a DOM node that exists outside the DOM hierarchy of the parent component." definition from reactjs.org
- integrate with Google Maps API and Places API
- Redux/Flux: study purposes only, this app does not really need it (Context API is more than enough). However, it was great to apply the flux concept with redux/react-redux library.
Extra implementations / Changes / Updates
- Input Text Field was made from 'scratch', my own implementation using CSS-in-JS;
- added extra animations and transitions;
- @material/react-text-field - is no longer under development (originally used in this project)
- react-lottie - is dead, I mean it does not have any update for at least 3 years. I am using another version, a fork called react-lottie-player instead
- react-slick did not work well, changed to @brainhubeu/react-carousel, but it still not working fine
To check it https://restaurant-finder-localiza.netlify.app/
In the project directory, you can run: