
A dynamic web application designed to provide personalized movie recommendations, allowing users to search, view, like, and manage a watchlist of movies tailored to their preferences.
The Movie Recommendation Web App enhances the movie-watching experience by offering personalized suggestions based on users' viewing history, ratings, and preferences. With a sleek interface, users can effortlessly search for movies, like their favorites, and curate a personalized watchlist. Powered by advanced data filtering and recommendation algorithms, the app ensures a seamless and engaging user experience.
🔗 Live Demo: mrsapp.netlify.app
- Search Movies: Quickly find movies by title, genre, or other criteria.
- Like & Watchlist: Like movies to show your preferences and add them to your personalized watchlist.
- Responsive Design: Enjoy a seamless experience across desktop and mobile devices.
- Efficient Data Handling: Powered by modern tools like Redux Toolkit and TanStack React Query for smooth state management and data fetching.
- ReactJS: For building a dynamic and interactive user interface.
- Redux & Redux Toolkit: For efficient state management.
- React Router: For seamless navigation between pages.
- TanStack React Query: For optimized data fetching and caching.
- Node.js: For robust server-side logic and API handling.
- Nodemon: For automatic server restarts during development.
reduxnodejsreact-routerreactjsnodemonredux-thunkredux-toolkittanstack-react-query
- Node.js (v16 or higher)
- npm , bun or yarn
- Clone the repository:
git clone https://github.com/Teams-Workspace/Movie-Recommendation-System
- Navigate to the project directory:
cd movie-recommendation-web-app - Install dependencies for both frontend and backend:
cd client && npm install cd ../server && npm install
- Start the backend server:
cd server npm run dev - Start the frontend:
cd client npm start - Open your browser and visit
http://localhost:5000to explore the app.
GET /api/movies: Fetch a list of movies.GET /api/movies/:id: Get details for a specific movie.POST /api/watchlist: Add a movie to the user's watchlist.POST /api/like: Like or unlike a movie.
Contributions are welcome! To contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature/your-feature). - Make your changes and commit (
git commit -m "Add your feature"). - Push to the branch (
git push origin feature/your-feature). - Open a Pull Request.
This project is licensed under the MIT License. See the LICENSE file for details.
For questions or feedback, reach out via email@example.com or open an issue on GitHub.
Built with ❤️ by Saad Ali Happy movie watching! 🎬