Radan is a web application that allows users to purchase movie tickets for theaters. It also provides an admin interface for managing movies and theaters within the Radan network.
- 🔐 Book seats based on selected movies and theaters.
- 📡 Select seats through an intuitive visual layout.
- 🗄️ Create and customize seat layouts.
- 🎨 Admin dashboard to manage movies and theaters.
- React (Vite + TypeScript)
- State Management: Zustand
- Styling: TailwindCSS
- Spring Boot (Java)
- Spring Security (Authentication)
- Spring Data JPA (Database interaction)
- Database: MySQL
project-root/
├─ frontend/ # React + Vite + TypeScript app
│ ├─ src/
│ │ ├─ components/
│ │ ├─ pages/
│ │ ├─ stores/
│ │ └─ services/
│ └─ vite.config.ts
│
├─ backend/ # Spring Boot app
│ ├─ src/main/java/com/example/radan/
│ │ ├─ controller/
│ │ ├─ dto/
│ │ ├─ entity/
│ │ ├─ exceptions/
│ │ ├─ repository/
│ │ ├─ service/
│ │ └─ RadanBackendApplication.java
│ └─ src/main/resources/application.properties
│
└─ README.md
-
Navigate to the backend folder:
cd backend -
Configure your database connection in
src/main/resources/application.properties. Example:spring.config.import=optional:classpath:application-secret.properties spring.application.name=radan-backend spring.datasource.url=jdbc:mysql://localhost:3306/radan spring.datasource.username=root spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver server.error.include-message=always file.upload-dir=./uploads/posters
-
Create a file named
application-secret.propertiesin the same directory and add your database password:spring.datasource.password=your_password_here -
Run the backend application:
./mvnw spring-boot:run
The backend will start at:
http://localhost:8080
-
Navigate to the frontend folder:
cd frontend -
Install dependencies:
npm install
-
Create a
.envfile in thefrontendfolder with the following content:VITE_API_URL=http://localhost:8080 VITE_IMAGE_URL=http://localhost:8080/images -
Start the development server:
npm run dev
The frontend will be accessible at:
http://localhost:5173
Now Playing Page
Movide Detail Page
Seat Selection Page
Dashboard Theater Detail
Create Seat Layout Page




