|
1 |
| -# Catalogue-of-Recipes |
| 1 | + |
| 2 | +# Catalogue of Movies with React & Redux |
| 3 | + |
| 4 | +**Search Result** |
| 5 | + |
| 6 | + |
| 7 | +**Movie Detail** |
| 8 | + |
| 9 | + |
| 10 | + |
| 11 | +## About the Project |
| 12 | + |
| 13 | +This project was built as a React & Redux Capstone project at Microverse. |
| 14 | +It is based on the idea of a "Catalogue of Recipes" which is a single-page application with React and Redux. |
| 15 | + |
| 16 | +It shows a browsable list of movies that users can filter and access to the details of each movie. Every page, the main page, and pages for each item have a unique route within the Single Page Application, SPA. |
| 17 | + |
| 18 | +I deployed this app to Heroku, so it’s accessible online. |
| 19 | +The data is retrieved from the Open Movie Database, [OMDb API](https://www.omdbapi.com/). |
| 20 | +With this API, this app fetches the list data of movies based on the user’s input. |
| 21 | +And the retrieved data is stored in the Redux store. |
| 22 | + |
| 23 | +Also, it retrieves the particular movie data by searching a unique id in the background and update the data in the Redux store only when the unique id matches the data of the store. |
| 24 | + |
| 25 | +This web app has 3 types of pages: |
| 26 | + |
| 27 | +- one page with a list of items that could be filtered by some parameters |
| 28 | +In this project, it’s a list of movies that can be filtered by the title and the year of the movie. |
| 29 | + |
| 30 | +- one page for the item details |
| 31 | +In this project, it’s the movie detail page. |
| 32 | + |
| 33 | +- one page for not found |
| 34 | +If users input the wrong path directly, the app shows the 404 page. |
| 35 | + |
| 36 | +A list of commonly used resources that I find helpful is listed in the acknowledgments. |
| 37 | + |
| 38 | + |
| 39 | +## Built With |
| 40 | + |
| 41 | +* [React](https://reactjs.org/) |
| 42 | +* [Redux](https://redux.js.org/) |
| 43 | +* [JavaScript](https://en.wikipedia.org/wiki/JavaScript) |
| 44 | +* [HTML5](https://en.wikipedia.org/wiki/HTML5) |
| 45 | +* [SASS](https://sass-lang.com/) |
| 46 | + |
| 47 | + |
| 48 | +## Live Demo |
| 49 | + |
| 50 | +[Live Demo Link](https://catalogue-of-movies-yoko.herokuapp.com/) |
| 51 | + |
| 52 | + |
| 53 | +## Video Description |
| 54 | + |
| 55 | +[Video description for this project](https://youtu.be/eg_REpJqK8Q) |
| 56 | + |
| 57 | + |
| 58 | +## Getting Started |
| 59 | + |
| 60 | +To get a local copy up and running follow these simple example steps. |
| 61 | + |
| 62 | +1. On the project GitHub page, navigate to the main page of the repository. |
| 63 | +2. Under the repository name, locate and click on a green button named `Code`. |
| 64 | +3. Copy the project URL as displayed. |
| 65 | +4. If you're running the Windows Operating System, open your command prompt. On Linux, Open your terminal. |
| 66 | +5. Change the current working directory to the location where you want the cloned directory to be made. Leave as it is if the current location is where you want the project to be. |
| 67 | +6. Type git clone, and then paste the URL you copied in Step 3. <br> |
| 68 | +e.g. $ git clone https://github.com/yourUsername/yourProjectName |
| 69 | +7. Press Enter. Your local copy will be created. |
| 70 | +8. To run the server in your local environment, run `npm start` |
| 71 | +9. To run the tests, run `npm test` |
| 72 | + |
| 73 | +## Author |
| 74 | + |
| 75 | +👤 **Yoko Saka** |
| 76 | + |
| 77 | +- GitHub: [@yocosaka](https://github.com/yocosaka) |
| 78 | +- Twitter: [@yocosaka](https://twitter.com/yocosaka) |
| 79 | +- LinkedIn: [Yoko Saka](https://www.linkedin.com/in/yokosaka) |
| 80 | + |
| 81 | + |
| 82 | +## Contributing |
| 83 | + |
| 84 | +Contributions, issues, and feature requests are welcome! |
| 85 | +Feel free to check the [issues page](../../issues). |
| 86 | + |
| 87 | +1. Fork the Project |
| 88 | +2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`) |
| 89 | +3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`) |
| 90 | +4. Push to the Branch (`git push origin feature/AmazingFeature`) |
| 91 | +5. Open a Pull Request |
| 92 | + |
| 93 | + |
| 94 | +## Show your support |
| 95 | + |
| 96 | +Give a ⭐️ if you like this project! |
| 97 | + |
| 98 | + |
| 99 | +## License |
| 100 | + |
| 101 | +This project is [MIT](./LICENSE) licensed. |
| 102 | + |
| 103 | + |
| 104 | +## Acknowledgements |
| 105 | +* [Prop Types](https://www.npmjs.com/package/prop-types) |
| 106 | +* [Heroku](https://dashboard.heroku.com/) |
| 107 | +* [iconify](https://iconify.design/icon-sets/) |
| 108 | +* [Pixabay](https://pixabay.com/) |
| 109 | +* [OMDb API](https://www.omdbapi.com/) |
0 commit comments