A simple and functional Event Booking application built with Laravel, Tailwind CSS, and Laravel Breeze. This system allows users to browse events, book seats, view their bookings, and download booking confirmations as PDF.
-
Event Management (Admin)
- Add, edit, delete, and list events.
- Manage event details including title, description, date, and available seats.
-
Public Event Browsing & Booking
- View upcoming events.
- Book available seats by entering name, email, and phone number.
-
User Authentication
- Breeze-based login, registration, and dashboard for users.
- Authenticated users can view all their bookings.
-
Booking Summary
- Users can see booked events with details.
- Displays booking date and event date.
-
Email Confirmation
- A confirmation email is sent to the user after successful booking.
-
PDF Ticket Download
- Users can download a PDF ticket with booking details.
-
The system supports user registration and login for booking events and viewing personal bookings.
-
An admin account is already created and preloaded in the included SQLite database:
-
Email:
[email protected]
-
Password:
admin@123
-
This specific email is used to identify admin access within the system.
-
All other registered users will have access only to public event features like booking and viewing their bookings.
- Backend: Laravel 11
- Frontend: Blade, Tailwind CSS
- Authentication: Laravel Breeze
- Database: SQLite
- PDF Generation: barryvdh/laravel-dompdf
- Mailing: Laravel Mail (log driver for local)
Public page showing all upcoming events available for booking
Admin dashboard showing all events with management options
User-friendly booking form to reserve seats for events
User dashboard displaying all their event bookings
Detailed booking view with PDF ticket download option
# 1. Clone repository
git clone https://github.com/karanhimadri/event-booking.git
cd event-booking
# 2. Install dependencies
composer install
npm install
# 3. Setup environment
cp .env.example .env
php artisan key:generate
# 4. Setup SQLite (or configure MySQL)
touch database/database.sqlite
# 5. Run migrations
php artisan migrate
# 6. Install Breeze & Tailwind
php artisan breeze:install
npm run dev
# 7. Start the server
php artisan serve
- The application uses log mailer, so email content can be viewed in
storage/logs/laravel.log
. - PDF download is implemented using
laravel-dompdf
.
- Name: Himadri Karan
- Role: Laravel Intern
- Project Duration: [26th July 2025 - 28t hugust 2025]
- Email: [email protected] | [email protected]
- Linkedin https://linkedin.com/in/himadrikaran
This project fulfills all task requirements using clean Laravel conventions. It can easily be extended with admin role permissions, search functionality, or Stripe payment integration.
Thank you for reviewing!