# erblinmazreku/sistem-per-menaxhimin-e-kinemase architecture

> Architecture diagram of the GitHub repository erblinmazreku/sistem-per-menaxhimin-e-kinemase, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-11). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase
- Repository: https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase

## Overview

This appears to be a Laravel cinema-booking application: users browse films and showtimes, choose seats, and receive reservations; administrators manage the catalogue, venues, schedules, reservations, and dashboard. The graph emphasizes the sampled booking and administration behavior, with the model layer showing the domain relationships. The README describes Laravel rather than this application, so product capabilities are inferred from the source tree; unsampled controller/view connections are omitted where the excerpts do not establish them.

Main entry points: [`routes/web.php`](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/routes/web.php) (Web routes), [`app/Models/Reservation.php`](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/Reservation.php) (Reservation records), [`app/Models/Showtime.php`](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/Showtime.php) (Showtimes), [`app/Http/Controllers/BookingController.php`](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/BookingController.php) (Seat booking)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_entry["Web entry and access"]
  node_web["Web routes<br/>[web.php]"]
  node_bootstrap["Laravel bootstrap<br/>[app.php]"]
  node_auth["Authentication"]
  node_registration["Registration"]
  node_admin_gate["Admin access gate"]
end

subgraph group_customer["Customer booking"]
  node_catalog["Film catalogue"]
  node_home["Home discovery<br/>[HomeController.php]"]
  node_booking["Seat booking"]
  node_reservation["Reservations"]
end

subgraph group_admin["Cinema administration"]
  node_dashboard["Admin dashboard"]
  node_admin_movies["Film management"]
  node_admin_genres["Genre management"]
  node_admin_halls["Hall management<br/>[HallController.php]"]
  node_admin_showtimes["Showtime management"]
  node_admin_reservations["Reservation oversight"]
end

subgraph group_domain["Cinema domain"]
  node_movies[("Movies<br/>[Movie.php]")]
  node_genres[("Genres<br/>[Genre.php]")]
  node_halls[("Halls<br/>[Hall.php]")]
  node_showtimes[("Showtimes<br/>[Showtime.php]")]
  node_reservations[("Reservation records<br/>[Reservation.php]")]
  node_seats[("Seats<br/>[Seat.php]")]
  node_allocations[("Active seat allocations")]
  node_users[("Users<br/>[User.php]")]
end

node_visitor(("Visitor or user"))

node_visitor -->|"sends requests"| node_web
node_web -->|"configured by"| node_bootstrap
node_web -->|"routes to"| node_auth
node_web -->|"routes to"| node_registration
node_web -->|"routes to"| node_home
node_web -->|"routes to"| node_catalog
node_web -->|"routes to"| node_booking
node_web -->|"routes to"| node_reservation
node_web -->|"routes to"| node_dashboard
node_web -->|"routes to"| node_admin_movies
node_web -->|"routes to"| node_admin_genres
node_web -->|"routes to"| node_admin_halls
node_web -->|"routes to"| node_admin_showtimes
node_web -->|"routes to"| node_admin_reservations
node_bootstrap -->|"registers alias"| node_admin_gate
node_auth -.->|"authenticates"| node_users
node_booking -->|"loads screening"| node_showtimes
node_booking -->|"reads occupied seats"| node_allocations
node_booking -->|"validates seats"| node_seats
node_booking -->|"creates reservation"| node_reservations
node_booking -->|"creates allocations"| node_allocations
node_booking -->|"assigns user"| node_users
node_admin_movies -->|"manages films"| node_movies
node_admin_movies -->|"loads genres"| node_genres
node_admin_showtimes -->|"schedules screenings"| node_showtimes
node_admin_showtimes -->|"checks film duration"| node_movies
node_admin_showtimes -->|"loads halls"| node_halls
node_admin_reservations -->|"manages reservations"| node_reservations
node_dashboard -->|"queries metrics"| node_movies
node_dashboard -->|"queries metrics"| node_genres
node_dashboard -->|"queries metrics"| node_halls
node_dashboard -->|"queries metrics"| node_showtimes
node_dashboard -->|"queries metrics"| node_reservations
node_dashboard -->|"queries metrics"| node_users
node_movies -->|"belongs to"| node_genres
node_movies -->|"has screenings"| node_showtimes
node_halls -->|"has seats"| node_seats
node_halls -->|"has screenings"| node_showtimes
node_showtimes -->|"belongs to"| node_movies
node_showtimes -->|"belongs to"| node_halls
node_showtimes -->|"has reservations"| node_reservations
node_reservations -->|"belongs to"| node_users
node_reservations -->|"belongs to"| node_showtimes
node_reservations -->|"tracks seats"| node_seats
node_reservations -->|"releases on cancel"| node_allocations
node_users -->|"has reservations"| node_reservations

click node_web "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/routes/web.php"
click node_bootstrap "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/bootstrap/app.php"
click node_auth "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/Auth/AuthenticatedSessionController.php"
click node_registration "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/Auth/RegisteredUserController.php"
click node_catalog "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/MovieController.php"
click node_home "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/HomeController.php"
click node_booking "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/BookingController.php"
click node_reservation "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/ReservationController.php"
click node_admin_gate "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Middleware/AdminMiddleware.php"
click node_dashboard "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/Admin/DashboardController.php"
click node_admin_movies "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/Admin/MovieController.php"
click node_admin_genres "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/Admin/GenreController.php"
click node_admin_halls "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/Admin/HallController.php"
click node_admin_showtimes "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/Admin/ShowtimeController.php"
click node_admin_reservations "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/Admin/ReservationController.php"
click node_movies "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/Movie.php"
click node_genres "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/Genre.php"
click node_halls "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/Hall.php"
click node_showtimes "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/Showtime.php"
click node_reservations "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/Reservation.php"
click node_seats "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/Seat.php"
click node_allocations "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/ActiveSeatAllocation.php"
click node_users "https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/User.php"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_web,node_bootstrap,node_auth,node_registration,node_admin_gate,node_visitor toneBlue
class node_catalog,node_home,node_booking,node_reservation toneAmber
class node_dashboard,node_admin_movies,node_admin_genres,node_admin_halls,node_admin_showtimes,node_admin_reservations toneMint
class node_movies,node_genres,node_halls,node_showtimes,node_reservations,node_seats,node_allocations,node_users toneRose
```

## Components

### Web entry and access

- [Web routes](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/routes/web.php): `routes/web.php`
- [Laravel bootstrap](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/bootstrap/app.php): `bootstrap/app.php`
- [Authentication](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/Auth/AuthenticatedSessionController.php): `app/Http/Controllers/Auth/AuthenticatedSessionController.php`
- [Registration](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/Auth/RegisteredUserController.php): `app/Http/Controllers/Auth/RegisteredUserController.php`
- [Admin access gate](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Middleware/AdminMiddleware.php): `app/Http/Middleware/AdminMiddleware.php`

### Customer booking

- [Film catalogue](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/MovieController.php): `app/Http/Controllers/MovieController.php`
- [Home discovery](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/HomeController.php): `app/Http/Controllers/HomeController.php`
- [Seat booking](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/BookingController.php): `app/Http/Controllers/BookingController.php`
- [Reservations](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/ReservationController.php): `app/Http/Controllers/ReservationController.php`

### Cinema administration

- [Admin dashboard](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/Admin/DashboardController.php): `app/Http/Controllers/Admin/DashboardController.php`
- [Film management](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/Admin/MovieController.php): `app/Http/Controllers/Admin/MovieController.php`
- [Genre management](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/Admin/GenreController.php): `app/Http/Controllers/Admin/GenreController.php`
- [Hall management](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/Admin/HallController.php): `app/Http/Controllers/Admin/HallController.php`
- [Showtime management](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/Admin/ShowtimeController.php): `app/Http/Controllers/Admin/ShowtimeController.php`
- [Reservation oversight](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Http/Controllers/Admin/ReservationController.php): `app/Http/Controllers/Admin/ReservationController.php`

### Cinema domain

- [Movies](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/Movie.php): `app/Models/Movie.php`
- [Genres](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/Genre.php): `app/Models/Genre.php`
- [Halls](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/Hall.php): `app/Models/Hall.php`
- [Showtimes](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/Showtime.php): `app/Models/Showtime.php`
- [Reservation records](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/Reservation.php): `app/Models/Reservation.php`
- [Seats](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/Seat.php): `app/Models/Seat.php`
- [Active seat allocations](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/ActiveSeatAllocation.php): `app/Models/ActiveSeatAllocation.php`
- [Users](https://github.com/erblinmazreku/sistem-per-menaxhimin-e-kinemase/blob/main/app/Models/User.php): `app/Models/User.php`

### Other components

- **Visitor or user**

## Connections

- Visitor or user → Web routes: sends requests
- Web routes → Laravel bootstrap: configured by (evidence: `bootstrap/app.php`)
- Web routes → Authentication: routes to (evidence: `routes/web.php`)
- Web routes → Registration: routes to (evidence: `routes/web.php`)
- Web routes → Home discovery: routes to (evidence: `routes/web.php`)
- Web routes → Film catalogue: routes to (evidence: `routes/web.php`)
- Web routes → Seat booking: routes to (evidence: `routes/web.php`)
- Web routes → Reservations: routes to (evidence: `routes/web.php`)
- Web routes → Admin dashboard: routes to (evidence: `routes/web.php`)
- Web routes → Film management: routes to (evidence: `routes/web.php`)
- Web routes → Genre management: routes to (evidence: `routes/web.php`)
- Web routes → Hall management: routes to (evidence: `routes/web.php`)
- Web routes → Showtime management: routes to (evidence: `routes/web.php`)
- Web routes → Reservation oversight: routes to (evidence: `routes/web.php`)
- Laravel bootstrap → Admin access gate: registers alias (evidence: `bootstrap/app.php`)
- Authentication → Users: authenticates
- Seat booking → Showtimes: loads screening (evidence: `app/Http/Controllers/BookingController.php`)
- Seat booking → Active seat allocations: reads occupied seats (evidence: `app/Http/Controllers/BookingController.php`)
- Seat booking → Seats: validates seats (evidence: `app/Http/Controllers/BookingController.php`)
- Seat booking → Reservation records: creates reservation (evidence: `app/Http/Controllers/BookingController.php`)
- Seat booking → Active seat allocations: creates allocations (evidence: `app/Http/Controllers/BookingController.php`)
- Seat booking → Users: assigns user (evidence: `app/Http/Controllers/BookingController.php`)
- Film management → Movies: manages films (evidence: `app/Http/Controllers/Admin/MovieController.php`)
- Film management → Genres: loads genres (evidence: `app/Http/Controllers/Admin/MovieController.php`)
- Showtime management → Showtimes: schedules screenings (evidence: `app/Http/Controllers/Admin/ShowtimeController.php`)
- Showtime management → Movies: checks film duration (evidence: `app/Http/Controllers/Admin/ShowtimeController.php`)
- Showtime management → Halls: loads halls (evidence: `app/Http/Controllers/Admin/ShowtimeController.php`)
- Reservation oversight → Reservation records: manages reservations (evidence: `app/Http/Controllers/Admin/ReservationController.php`)
- Admin dashboard → Movies: queries metrics (evidence: `app/Http/Controllers/Admin/DashboardController.php`)
- Admin dashboard → Genres: queries metrics (evidence: `app/Http/Controllers/Admin/DashboardController.php`)
- Admin dashboard → Halls: queries metrics (evidence: `app/Http/Controllers/Admin/DashboardController.php`)
- Admin dashboard → Showtimes: queries metrics (evidence: `app/Http/Controllers/Admin/DashboardController.php`)
- Admin dashboard → Reservation records: queries metrics (evidence: `app/Http/Controllers/Admin/DashboardController.php`)
- Admin dashboard → Users: queries metrics (evidence: `app/Http/Controllers/Admin/DashboardController.php`)
- Movies → Genres: belongs to (evidence: `app/Models/Movie.php`)
- Movies → Showtimes: has screenings (evidence: `app/Models/Movie.php`)
- Halls → Seats: has seats (evidence: `app/Models/Hall.php`)
- Halls → Showtimes: has screenings (evidence: `app/Models/Hall.php`)
- Showtimes → Movies: belongs to (evidence: `app/Models/Showtime.php`)
- Showtimes → Halls: belongs to (evidence: `app/Models/Showtime.php`)
- Showtimes → Reservation records: has reservations (evidence: `app/Models/Showtime.php`)
- Reservation records → Users: belongs to (evidence: `app/Models/Reservation.php`)
- Reservation records → Showtimes: belongs to (evidence: `app/Models/Reservation.php`)
- Reservation records → Seats: tracks seats (evidence: `app/Models/Reservation.php`)
- Reservation records → Active seat allocations: releases on cancel (evidence: `app/Models/Reservation.php`)
- Users → Reservation records: has reservations (evidence: `app/Models/User.php`)
