Pennant
Choose whether AI triage is active for this request.
Feature::active()The first-party advantage
Auth. Experiments. Queues. Realtime. AI. Observability. Laravel’s packages are not loose accessories—they share conventions, contracts and an application model.
Every module shown here is installed and exercised by Artisan Supply Co.
Package switchboardArtisan Supply Co / production rack
Select a module
The package is only the visible module. Its leverage comes from plugging into Laravel’s existing identity, data, event and queue contracts—and then into a Cloud runtime that recognises the same shape.
Spotlight · Pennant
Pennant gives the application a native way to assign variants. Your code decides who sees what; your analytics records what happened; Cloud keeps that assignment consistent across application instances.
Feature resolver / checkout-message
50 / 50 splitApplication ownsVariant definition, subject scope, exposure events, outcome measurement and the decision to roll forward.
Cloud enablesConsistent data, deploy previews and independently scalable runtimes—without moving the flag out of the application.
Why a suite beats a shelf
A capability rarely ends at its package boundary. Shared Laravel contracts turn a string of specialist modules into one inspectable customer journey.
Choose whether AI triage is active for this request.
Feature::active()Move classification off the customer request path.
onQueue('triage')Return structured, provider-neutral proposal data.
HasStructuredOutputUpdate the human approval surface in realtime.
ShouldBroadcastTrace the job, exception and deploy context.
invocation_idThat is the package advantage: specialist tools without a fragmented mental model. Laravel supplies the common language; Cloud gives the resulting system a natural place to run.