# denoqcore/rent-use architecture

> Architecture diagram of the GitHub repository denoqcore/rent-use, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-25). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/denoqcore/rent-use
- Repository: https://github.com/denoqcore/rent-use

## Overview

This is a Laravel rental-and-booking marketplace: users browse or search listings, create listings, arrange bookings, and manage subscriptions; reviews, favorites, chat, and boosts support the marketplace. The graph captures the documented product capabilities and the sampled listing behavior. Many controllers and integrations were not sampled, so their internal call wiring is intentionally limited; Stripe and Reverb are shown as documented optional services.

Main entry points: [`routes/web.php`](https://github.com/denoqcore/rent-use/blob/main/routes/web.php) (Web routes), [`app/Models/Listing.php`](https://github.com/denoqcore/rent-use/blob/main/app/Models/Listing.php) (Domain models), [`app/Http/Controllers/ListingController.php`](https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/ListingController.php) (Listing management), [`app/Http/Controllers/BookingController.php`](https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/BookingController.php) (Booking flow)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_entry["Web entry"]
  node_http["Laravel request<br/>[index.php]"]
  node_routes["Web routes<br/>[web.php]"]
end

subgraph group_market["Marketplace"]
  node_listing["Listing management"]
  node_search["Search and discovery"]
  node_categories["Categories"]
  node_listingview["Listing pages<br/>[show.blade.php]"]
  node_models["Domain models<br/>[Listing.php]"]
end

subgraph group_engagement["Bookings and community"]
  node_booking["Booking flow"]
  node_chat["Messaging<br/>[ChatController.php]"]
  node_reviews["Reviews and votes"]
  node_favorites["Favorites"]
  node_profile["Profiles"]
end

subgraph group_operations["Plans and administration"]
  node_subscriptions["Subscriptions"]
  node_boosts["Listing boosts"]
  node_admin["Admin console"]
end

node_customer(("Marketplace user"))
node_database[("Application database<br/>[database.php]")]
node_stripe["Stripe"]
node_reverb["Laravel Reverb<br/>[reverb.php]"]

node_customer -->|"sends requests"| node_http
node_http -->|"dispatches"| node_routes
node_routes -->|"routes listing actions"| node_listing
node_routes -->|"routes searches"| node_search
node_routes -->|"routes category requests"| node_categories
node_routes -->|"routes bookings"| node_booking
node_routes -->|"routes messages"| node_chat
node_routes -->|"routes reviews"| node_reviews
node_routes -->|"routes favorites"| node_favorites
node_routes -->|"routes profile requests"| node_profile
node_routes -->|"routes subscriptions"| node_subscriptions
node_routes -->|"routes boosts"| node_boosts
node_listing -->|"queries listings"| node_models
node_search -->|"searches listings"| node_models
node_booking -->|"uses booking models"| node_models
node_chat -->|"uses chat models"| node_models
node_reviews -->|"uses review models"| node_models
node_favorites -->|"uses favorite model"| node_models
node_profile -->|"uses user model"| node_models
node_subscriptions -->|"uses payment models"| node_models
node_boosts -->|"uses listing model"| node_models
node_admin -->|"manages domain records"| node_models
node_models -->|"reads and writes"| node_database
node_listing -->|"renders listing page"| node_listingview
node_booking -.->|"may process payment"| node_stripe
node_subscriptions -.->|"may process payment"| node_stripe
node_chat -.->|"may broadcast events"| node_reverb

click node_http "https://github.com/denoqcore/rent-use/blob/main/public/index.php"
click node_routes "https://github.com/denoqcore/rent-use/blob/main/routes/web.php"
click node_listing "https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/ListingController.php"
click node_search "https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/SearchController.php"
click node_categories "https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/CategoryController.php"
click node_listingview "https://github.com/denoqcore/rent-use/blob/main/resources/views/listings/show.blade.php"
click node_booking "https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/BookingController.php"
click node_chat "https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/ChatController.php"
click node_reviews "https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/ReviewController.php"
click node_favorites "https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/FavoriteController.php"
click node_profile "https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/ProfileController.php"
click node_subscriptions "https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/SubscriptionController.php"
click node_boosts "https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/BoostController.php"
click node_admin "https://github.com/denoqcore/rent-use/blob/main/app/Filament/Resources/Listings/ListingResource.php"
click node_models "https://github.com/denoqcore/rent-use/blob/main/app/Models/Listing.php"
click node_database "https://github.com/denoqcore/rent-use/blob/main/config/database.php"
click node_reverb "https://github.com/denoqcore/rent-use/blob/main/config/reverb.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_http,node_routes,node_customer toneBlue
class node_listing,node_search,node_categories,node_listingview,node_models,node_database toneAmber
class node_booking,node_chat,node_reviews,node_favorites,node_profile toneMint
class node_subscriptions,node_boosts,node_admin toneRose
class node_stripe toneIndigo
class node_reverb toneTeal
```

## Components

### Web entry

- [Laravel request](https://github.com/denoqcore/rent-use/blob/main/public/index.php): `public/index.php`
- [Web routes](https://github.com/denoqcore/rent-use/blob/main/routes/web.php): `routes/web.php`

### Marketplace

- [Listing management](https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/ListingController.php): `app/Http/Controllers/ListingController.php`
- [Search and discovery](https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/SearchController.php): `app/Http/Controllers/SearchController.php`
- [Categories](https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/CategoryController.php): `app/Http/Controllers/CategoryController.php`
- [Listing pages](https://github.com/denoqcore/rent-use/blob/main/resources/views/listings/show.blade.php): `resources/views/listings/show.blade.php`
- [Domain models](https://github.com/denoqcore/rent-use/blob/main/app/Models/Listing.php): `app/Models/Listing.php`

### Bookings and community

- [Booking flow](https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/BookingController.php): `app/Http/Controllers/BookingController.php`
- [Messaging](https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/ChatController.php): `app/Http/Controllers/ChatController.php`
- [Reviews and votes](https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/ReviewController.php): `app/Http/Controllers/ReviewController.php`
- [Favorites](https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/FavoriteController.php): `app/Http/Controllers/FavoriteController.php`
- [Profiles](https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/ProfileController.php): `app/Http/Controllers/ProfileController.php`

### Plans and administration

- [Subscriptions](https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/SubscriptionController.php): `app/Http/Controllers/SubscriptionController.php`
- [Listing boosts](https://github.com/denoqcore/rent-use/blob/main/app/Http/Controllers/BoostController.php): `app/Http/Controllers/BoostController.php`
- [Admin console](https://github.com/denoqcore/rent-use/blob/main/app/Filament/Resources/Listings/ListingResource.php): `app/Filament/Resources/Listings/ListingResource.php`

### Other components

- **Marketplace user**
- [Application database](https://github.com/denoqcore/rent-use/blob/main/config/database.php): `config/database.php`
- **Stripe**
- [Laravel Reverb](https://github.com/denoqcore/rent-use/blob/main/config/reverb.php): `config/reverb.php`

## Connections

- Marketplace user → Laravel request: sends requests
- Laravel request → Web routes: dispatches
- Web routes → Listing management: routes listing actions
- Web routes → Search and discovery: routes searches
- Web routes → Categories: routes category requests
- Web routes → Booking flow: routes bookings
- Web routes → Messaging: routes messages
- Web routes → Reviews and votes: routes reviews
- Web routes → Favorites: routes favorites
- Web routes → Profiles: routes profile requests
- Web routes → Subscriptions: routes subscriptions
- Web routes → Listing boosts: routes boosts
- Listing management → Domain models: queries listings
- Search and discovery → Domain models: searches listings
- Booking flow → Domain models: uses booking models
- Messaging → Domain models: uses chat models
- Reviews and votes → Domain models: uses review models
- Favorites → Domain models: uses favorite model
- Profiles → Domain models: uses user model
- Subscriptions → Domain models: uses payment models
- Listing boosts → Domain models: uses listing model
- Admin console → Domain models: manages domain records
- Domain models → Application database: reads and writes
- Listing management → Listing pages: renders listing page
- Booking flow → Stripe: may process payment
- Subscriptions → Stripe: may process payment
- Messaging → Laravel Reverb: may broadcast events
