A movie companion app built entirely with React Hooks that helps you discover, explore, rate, and keep track of movies you've watched.
usePopcorn is a lightweight movie discovery and tracking application built entirely with React Hooks.
Search through a vast movie database, explore detailed movie information, rate films based on your personal taste, and maintain a curated watchlist of your favorite titles—all within a clean and intuitive interface.
The project focuses on modern React fundamentals and showcases practical usage of hooks for state management, side effects, and UI interactions.
- 🔍 Instant movie search
- 🎥 Detailed movie information and synopses
- ⭐ Personal movie rating system
- 📌 Save and manage your watchlist
- ⚡ Fast and responsive React state updates
- 🎯 Built entirely with React Hooks
- 🧠 Demonstrates modern React patterns and best practices
- React
- JavaScript (ES6+)
- Create React App
- React Hooks
useStateuseEffectuseRef- Custom Hooks
Make sure you have installed:
- Node.js
- npm
Clone the repository:
git clone https://github.com/Oohnohassani/usePopcorn.gitNavigate into the project directory:
cd usePopcornInstall dependencies:
npm installStart the development server:
npm run startThe application will be available at:
http://localhost:3000
This project was built to practice and demonstrate:
- React component architecture
- State management with Hooks
- Side effects with
useEffect - Reusable custom hooks
- Component composition
- API data fetching
- Conditional rendering
- Performance optimizations
This project is intentionally focused on frontend development and React fundamentals.
- ❌ Not responsive
- ❌ Not mobile-friendly
- ❌ No backend/database
- ❌ No user authentication
- ❌ No persistent cloud storage
For now, ratings and watchlists exist only within the application's current state.
Planned enhancements include:
- 📱 Responsive design
- 🌙 Dark mode
- 🔐 User authentication
- ☁️ Backend integration
- 🗄️ Database persistence
- 👥 User profiles
- 🎯 Personalized recommendations
Here is a screenchot of usePopcorn🍿 application
Contributions, suggestions, and improvements are welcome.
Feel free to fork the project and submit a pull request.
This project is licensed under the MIT License.
Made with ❤️ and React Hooks 🍿