Boletilandia is a Laravel 11 event ticketing platform that lets administrators create and manage events while allowing registered users to browse events, select seats on an interactive SVG map, purchase tickets, and download PDF confirmations. This page introduces the platform’s purpose, feature set, tech stack, and the two user roles that drive its access-control model.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/AndresLopezCorrales/Boletilandia/llms.txt
Use this file to discover all available pages before exploring further.
What Is Boletilandia?
Boletilandia is a multi-role, session-driven ticketing application built as a Laravel SaaS. An admin controls the full lifecycle of an event — creating it, uploading a cover image, and defining priced seating sections — while a user browses the event gallery, picks seats on a live SVG venue map, completes a purchase, and receives a downloadable PDF ticket. Every part of the experience, from authentication to file storage to payment confirmation dialogs, is handled server-side with Livewire-powered components.Key Features
Role-Based Access Control
Two distinct roles —
admin and user — enforced by dedicated middleware (Admin and User) registered in bootstrap/app.php. Admins reach an exclusive dashboard; regular users are confined to the public event and purchase flow.Event Management & Image Uploads
Admins create events with a name, date/time, address, venue, and a cover image. Images are stored under
storage/app/public/imagen_path/ and served through the public disk after running php artisan storage:link.Interactive SVG Seat Map
Sections A through H are rendered as a clickable SVG venue map. Each section belongs to one of two price tiers — 1,000 — defined per event in the
seccion table via the precio column.Real-Time Seat Availability
The
asiento table tracks every seat with a disponibilidad_asiento boolean. The seat map reflects live availability so users can never purchase an already-taken seat.PDF Ticket Generation
Purchased tickets are rendered as PDFs using barryvdh/laravel-dompdf (^3.0). The generated file is stored in the session and made available for download immediately after a successful purchase.
SweetAlert2 Confirmation Dialogs
Purchase confirmations and destructive actions use SweetAlert2 (^11.14.4) for polished, accessible modal dialogs — loaded as a first-class npm dependency rather than a CDN script.
Admin Revenue Analytics
A dedicated
GraficaController powers an admin-only revenue analytics chart, giving a visual overview of ticket sales and income across events.Laravel Jetstream Auth with 2FA
Authentication is handled by Laravel Jetstream (^5.2) on the Livewire stack, with Fortify powering registration, password resets, profile updates, and optional two-factor authentication (TOTP confirm-on-enable).
Tech Stack
| Layer | Technology |
|---|---|
| Framework | Laravel 11 (^11.9) · PHP ^8.2 |
| Auth & Profile | Laravel Jetstream ^5.2 · Laravel Fortify · Laravel Sanctum ^4.0 |
| Reactive UI | Livewire ^3.0 |
| Styling & Build | Tailwind CSS ^3.4 · Vite ^5.0 · laravel-vite-plugin ^1.0 |
| PDF Generation | barryvdh/laravel-dompdf ^3.0 |
| Confirmation Dialogs | SweetAlert2 ^11.14.4 |
| Database | SQLite (default) · MySQL · MariaDB · PostgreSQL (all supported) |
| Session / Queue / Cache | Database driver (default for all three) |
User Roles
Boletilandia uses ausertype string column on the users table (added by the 2024_10_10_032435_update_users_table migration). There are two valid values:
user (default)
Every newly registered account receives the user role automatically (the column defaults to 'user'). Users can:
- Browse the public event gallery
- Select seats on the interactive SVG map
- Purchase tickets and receive a session-scoped PDF download
- Manage their Jetstream profile (password, 2FA, account deletion)
admin
Admins have exclusive access to the admin dashboard and all management routes, protected by the admin middleware. Admins can:
- Create, update, and delete events (including cover-image uploads)
- Define seating sections and pricing per event
- Monitor real-time seat availability across all events
- View revenue analytics via the admin chart