尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
A full-stack MERN application for browsing movies, watching trailers, and booking cinema tickets with real-time seat selection and payment integration.
The application is built using a modern full-stack architecture with a decoupled frontend and backend, using Inngest for background workflows and MongoDB for data persistence.
🔹 Frontend (Client)
• State Management: Uses React Context API (AppContext) for auth and movie data.
• Micro-interactions: Interactive SeatLayout for real-time selection.
• AI Integration: Custom CineBot component for movie recommendations and support.查看完整 README ↗A full-stack MERN application for browsing movies, watching trailers, and booking cinema tickets with real-time seat selection and payment integration.
The application is built using a modern full-stack architecture with a decoupled frontend and backend, using Inngest for background workflows and MongoDB for data persistence.
graph TD
subgraph Client ["💻 Client (React + Vite)"]
direction TB
AC["AppContext (Global State)"]
P["Pages (Home, Details, Seats)"]
C["Components (Navbar, Footer)"]
CB["CineBot (AI Chatbot)"]
TWR["Tailwind CSS & React Router"]
end
subgraph Server ["⚙️ Server (Node.js + Express.js)"]
direction TB
R["Routes (API Endpoints)"]
CT["Controllers (Business Logic)"]
M["Models (Mongoose Schemas)"]
I["Inngest (Background Jobs)"]
VD["Vercel Deployment"]
end
DB[("💾 MongoDB (Persistence)")]
Client <-->|"REST API"| Server
Server --> DB
DB -.->|"Data Store"| M
style Client fill:#3b3bb1,stroke:#fff,color:#fff
style Server fill:#a64d2e,stroke:#fff,color:#fff
style DB fill:#1e511e,stroke:#fff,color:#fff
AppContext) for auth and movie data.SeatLayout for real-time selection.CineBot component for movie recommendations and support.routes, controllers, and models.git clone <repository-url>
cd Movie-Ticket-booking
cd server
npm install
Create a .env file in the server directory:
MONGODB_URI=your_mongodb_connection_string
PORT=3000
TMDB_API_KEY=your_tmdb_api_key
# Clerk Auth
CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key
CLERK_SECRET_KEY=your_clerk_secret_key
# Stripe
STRIPE_SECRET_KEY=your_stripe_secret_key
STRIPE_PUBLISHABLE_KEY=your_stripe_publishable_key
# Inngest (Required for background tasks)
INNGEST_EVENT_KEY=your_inngest_event_key
INNGEST_SIGNING_KEY=your_inngest_signing_key
# Resend (Required for emails)
RESEND_API_KEY=your_resend_api_key
Start the server:
npm run server
cd client
npm install
Create a .env file in the client directory:
VITE_BASE_URL=http://localhost:3000
VITE_CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key
VITE_TMDB_IMAGE_BASE_URL=https://image.tmdb.org/t/p/original
VITE_CURRENCY=$
Start the client:
npm run dev
server folder code to GitHub.server/.env.0.0.0.0/0) in MongoDB Atlas Network Access.client folder code to GitHub.client/.env.VITE_BASE_URL to your deployed server URL (e.g., https://your-server.vercel.app).To test the email flow and user sync locally:
npm run server).npx inngest-cli@latest dev -u http://localhost:3000/api/inngest
http://localhost:8288) to view event logs and trigger dry-runs.