Laravel Projects Examples

Laravel 6-Step Flight Check-in Form with Complex Pricing

A complex form to check-in to the airline flight. Personal information, seat choice, extra services and baggage - all filled in with dynamic Alpine/Livewire elements and complicated pricing logic.

Airline flight check-in system built with Laravel 12, Filament 4, and Alpine.js (with a bit of Livewire) for dynamic form elements.

The system consists of two main components:

  • Multi-step web-based check-in process for passengers
  • And a Filament admin panel for managing flights, pricing, and system operations.

How to install

  • Clone the repository with git clone
  • Copy the .env.example file to .env and edit database credentials there
  • Run composer install
  • Run php artisan key:generate
  • Run php artisan migrate --seed (it has some seeded data for your testing)
  • Run npm install && npm run build for the front-end assets
  • Launch the main URL / and start the check-in process
  • Filament admin panel URL is /admin, login with [email protected] and password.

Web Check-in Flow

The system processes passenger check-ins through a multi-step web interface (/checkin/step/1 through /checkin/step/6) handled by the app/Http/Controllers/CheckinController.php Controller:

public function processStep1(BookingLookupRequest $request): RedirectResponse
{
try {
$booking = $this->checkinService->findAndValidateBooking($request->validated());
$checkin = $this->checkinService->createCheckinSession($booking);
 
// Implementation of the check-in flow...
} catch (ModelNotFoundException $e) {
return back()->withErrors(['booking_reference' => $e->getMessage()]);
}
}

Step 1: Booking Lookup

Validates passenger identity and retrieves...

Want to get the access to GitHub repository?

Become a Premium Member for $129/year or $29/month