How madakadharani177/cinematic-hub works
Cinematic Hub is a movie-catalog website backed by Spring Boot and MySQL. Visitors browse and filter the catalog, open movie details and trailer links, and save a browser-local watchlist; managers can create, edit, and delete catalog records. The main request path runs from React pages through the Axios API client to REST endpoints, service logic, and JPA persistence. The README documents additional UI capabilities whose detailed implementations were only partly sampled, so those branches are represented at the shared App.jsx path.
Main entry points: App.jsx React application · MovieRepository.java Movie repository · api.js Axios client · MovieService.java Movie service
Components 15
Movie website
- React application
frontend/src/App.jsx - Discover and search
frontend/src/App.jsx - Movie details
frontend/src/App.jsx - Browser watchlist
frontend/src/App.jsx - Movie management
frontend/src/App.jsx - Axios client
frontend/src/api.js
Catalog API
- REST endpoints
backend/src/main/java/com/cinematichub/MovieController.java - Movie service
backend/src/main/java/com/cinematichub/MovieService.java - Not-found error
backend/src/main/java/com/cinematichub/MovieNotFoundException.java
Movie data
- Movie repository
backend/src/main/java/com/cinematichub/MovieRepository.java - Movie record
backend/src/main/java/com/cinematichub/Movie.java - Sample data seeder
backend/src/main/java/com/cinematichub/DataSeeder.java
Other components
- Movie visitor
- Trailer link service
- MySQL database
Connections 17
- Movie visitor → React application: uses
- React application → Discover and search: routes to
frontend/src/App.jsx - React application → Movie details: routes to
frontend/src/App.jsx - React application → Browser watchlist: routes to
frontend/src/App.jsx - React application → Movie management: routes to
frontend/src/App.jsx - Discover and search → Axios client: fetches movies
frontend/src/App.jsx - Movie details → Axios client: fetches movie
frontend/src/App.jsx - Movie management → Axios client: manages records
frontend/src/App.jsx - Browser watchlist → Movie visitor: saves locally
README.md - Axios client → REST endpoints: sends HTTP requests
frontend/src/api.js - REST endpoints → Movie service: delegates
backend/src/main/java/com/cinematichub/MovieController.java - Movie service → Movie repository: queries and saves
backend/src/main/java/com/cinematichub/MovieService.java - Movie repository → Movie record: queries entity
backend/src/main/java/com/cinematichub/MovieRepository.java - Movie repository → MySQL database: persists records
README.md - Movie service → Not-found error: throws
backend/src/main/java/com/cinematichub/MovieService.java - Sample data seeder → Movie repository: seeds if empty
backend/src/main/java/com/cinematichub/DataSeeder.java - Movie details → Trailer link service: opens trailer link
README.md