Skip to content

Forms ​

With no schema, Scheduler Pro builds a form from your attributes: title, resource, start, end, progress, dependencies and repeat. Extend it or replace it:

php
$scheduler->schema(fn (array $defaults) => [
    ...$defaults,
    Select::make('phase')->options(Phase::class)->required(),
]);

Create and edit run as native Filament actions (createEvent, editEvent), so everything you know about Filament forms applies.

  • Field defaults are kept, and the dragged slot is filled in.
  • Rule violations appear as notifications and keep the modal open.
  • RecurrenceField::field() adds the Repeat section to your own schema.

Persistence ​

php
$scheduler->createRecordUsing(fn (array $data) => Appointment::create([
    ...$data,
    'booked_by' => auth()->id(),
]));

Who can create ​

php
$scheduler->creatable(fn () => auth()->user()->isReceptionist());