Filament: Appointment System with Public Form

2-appointment-reservation-public-form
68747470733a2f2f6c61726176656c6461696c792e636f6d2f75706c6f6164732f323032332f31302f66756c6c2d63616c656e6461722d30312e706e67

No comments or questions yet...

This project demonstrates three Filament features:

  1. How to show dynamic radio button values (timeslots) in live-mode based on the values in other fields (date).
  2. How to re-use the admin panel form outside of admin panel, on a public page.
  3. How to use FullCalendar to show the calendar of tasks

How it works

First, I will explain the dynamic form, and then, how to use that form as a public form, outside of the admin panel.

Dynamic Radio Values on Change of Dropdown

When you log in as admin, you can create an appointment: choose the track and the form will show the radio buttons of available timeslots that are not taken yet.

This is done in the file app/Filament/Resources/ReservationResource.php

DatePicker::make('date')
->live(),
Radio::make('track')
->options(fn (Get $get) => (new ReservationService())->getAvailableTimesForDate($get('date')))
->hidden(fn (Get $get) => ! $get('date'))

The code means the reactive "live" behavior of the DatePicker input, with Radio options being queried from the...

The FULL tutorial is available after the purchase: in the Readme file of the official repository you would get invited to.
Get the Source Code: 38 Premium Examples for $99