Skip to content
MS Keys Gate
Concept / DemoPHP / Laravel

Freightline — Laravel dashboard

Shows a clean Laravel structure: models, policies, queued jobs and a typed API.

A concept by MS Keys Gate, built to demonstrate capability. It is not a client project and was never commissioned.

Screens

freightline.example

Shipments. A filterable table with status, owner and next action.

What it sets out to prove

  • Enforce who-can-see-what with policies, not scattered if statements
  • Record every state change as an immutable audit entry
  • Push slow work — labels, notifications — onto queues

Built with

  • Laravel
  • PHP
  • Eloquent
  • Queues
  • Pest

Authorisation in one place

Every shipment action runs through a policy method; controllers just call authorize() and stay thin.

An audit trail you can trust

Status transitions are appended to an events table and never updated, so history cannot be quietly rewritten.

A look at the code

A policy method the controller defers to

final class ShipmentPolicy
{
    public function markDelivered(User $user, Shipment $shipment): bool
    {
        return $user->hasRole('dispatcher')
            && $shipment->carrier_id === $user->carrier_id
            && $shipment->status === ShipmentStatus::InTransit;
    }
}

// ShipmentController::deliver()
$this->authorize('markDelivered', $shipment);
$shipment->markDelivered();          // appends an audit event
DispatchProofOfDelivery::dispatch($shipment);  // queued

Illustrative snippet from the concept (php).

Take this further

The thinking here carries straight into a real project. See the Web applications service, or tell us what you have in mind.