Skip to content

Spacifier/Popcorn-Picks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

9 Commits
Β 
Β 
Β 
Β 

Repository files navigation

🎬 Movie Explorer

Welcome to Popcorn Picks, a stylish and dynamic movie web application built with React, featuring smooth animations, a personalized watchlist, dynamic genre filtering, and a powerful search experience.


πŸ‘¨β€πŸ’» Developed by

Swapnil Garg


πŸ–ΌοΈ Live Demo

⚑Popcorn Picks


🌟 Features

  • πŸ” Search Movies – Real-time search through TMDB.
  • 🎞️ Browse by Genre – Genre-based exploration of curated movies.
  • πŸ“ˆ Trending Section – Discover trending movies dynamically.
  • ❀️ Watchlist – Add/remove movies to your personal list.
  • 🧠 Smart Layouts – Interactive and responsive UI with animations.
  • ⚑ Reusable Components – Clean and modular structure for scalability.

πŸ›  Tech Stack

  • βš›οΈ React.js
  • πŸ’… Tailwind CSS
  • πŸŽ₯ TMDb API
  • πŸ” Axios
  • 🧠 GSAP (for animations)
  • πŸ“¦ LocalStorage (for watchlist persistence)

πŸ“‚ Folder Structure

frontend/
β”œβ”€β”€ public/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ assets/
β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ common/
β”‚   β”‚   β”‚   β”œβ”€β”€ AnimatedTitle.jsx
β”‚   β”‚   β”‚   β”œβ”€β”€ Button.jsx
β”‚   β”‚   β”‚   β”œβ”€β”€ Header.jsx
β”‚   β”‚   β”‚   β”œβ”€β”€ Footer.jsx
β”‚   β”‚   β”‚   β”œβ”€β”€ SearchInput.jsx
β”‚   β”‚   β”‚   β”œβ”€β”€ MovieRow.jsx
β”‚   β”‚   β”‚   β”œβ”€β”€ TrendingMovieRow.jsx
β”‚   β”‚   β”‚   └── WatchlistButton.jsx
β”‚   β”‚   β”œβ”€β”€ HomeElements/
β”‚   β”‚   β”‚   β”œβ”€β”€ Explore.jsx
β”‚   β”‚   β”‚   β”œβ”€β”€ Genre.jsx
β”‚   β”‚   β”‚   β”œβ”€β”€ Hero.jsx
β”‚   β”‚   β”‚   β”œβ”€β”€ Home.jsx
β”‚   β”‚   β”‚   └── MainContent.jsx
β”‚   β”‚   └── MovieCard/
β”‚   β”‚       β”œβ”€β”€ MovieCard.jsx
β”‚   β”‚       β”œβ”€β”€ MovieCardHover.jsx
β”‚   β”‚       β”œβ”€β”€ MovieCardTrending.jsx
β”‚   β”‚       └── index.js
β”‚   β”œβ”€β”€ services/
β”‚   β”‚   └── tmdbApi.js
β”‚   β”œβ”€β”€ App.jsx
β”‚   β”œβ”€β”€ Layout.jsx
β”‚   β”œβ”€β”€ main.jsx
β”‚   β”œβ”€β”€ index.css
β”‚   β”œβ”€β”€ About.jsx
β”‚   β”œβ”€β”€ Search.jsx
β”‚   β”œβ”€β”€ GenrePage.jsx
β”‚   └── Watchlist.jsx
β”œβ”€β”€ index.html
β”œβ”€β”€ vite.config.js
β”œβ”€β”€ .gitignore
β”œβ”€β”€ package.json
β”œβ”€β”€ package-lock.json
└── README.md

πŸš€ Getting Started

πŸ“¦ Installation

git clone https://github.com/spacifier/popcorn-picks.git
cd frontend
npm install

πŸ§ͺ Run Locally

npm run dev

πŸ”— API

This project uses TMDB API to fetch movie data.


πŸ“Œ To Do (Future Features)

βœ… Full movie detail page

βœ… User login with Firebase

βœ… Real-time synced watchlist

πŸŒ™ Dark/Light mode toggle

🧠 AI-based recommendations


πŸ™Œ Contributing

Feel free to fork, star, and contribute! PRs are welcome πŸŽ‰


πŸ“œ License

This project is open-source

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published