PickASeat is a modern web application for browsing shows and booking movie or theater seats online. Built using React and Vite, this project showcases key frontend development concepts including client-side routing, component-based architecture, state management, and form handling.
- π Browse shows, movies, and venues
- πͺ Select and reserve seats in real-time
- π³ Simulated payment flow
- π View showtimes by date and location
- π± Responsive design for mobile and desktop
- Frontend: React
- Routing: React Router DOM
- Styling: CSS Modules
- State Management: useState, useEffect, useContext
- Build Tool: Vite
PickASeat/
βββ PICKASEAT/
β βββ .gitignore
β βββ eslint.config.js
β βββ index.html
β βββ package-lock.json
β βββ package.json
β βββ vite.config.js
β βββ src/
β β βββ App.css
β β βββ App.jsx
β β βββ main.jsx
β β βββ components/
β β β βββ About.jsx
β β β βββ AuthContext.jsx
β β β βββ Booking.jsx
β β β βββ Details.jsx
β β β βββ Footer.jsx
β β β βββ Home.jsx
β β β βββ Login.jsx
β β β βββ Movies.jsx
β β β βββ MyBooking.jsx
β β β βββ Payment.jsx
β β β βββ Signup.jsx
β β βββ assets/
β β
β βββ public/
β β βββ vite.svg
Ensure you have Node.js and npm installed.
git clone https://github.com/Dhivakar2005/PickASeat.git
cd PICKASEAT
npm install
npm install react-router-dom
npm run dev
Open http://localhost:3000 to view it in the browser.
-
Integrate payment gateway (Stripe, Razorpay)
-
Add user authentication (JWT/Firebase Auth)
-
Admin dashboard for show management
-
Real-time seat locking with WebSockets
Contributions are welcome! Feel free to open issues or submit pull requests.
MIT License. See LICENSE file for details.