The Booking Plugin allows you to add a full-featured reservation system to your Botble CMS website.
Users can select their desired date and time slot, fill in the booking form, and submit a reservation.
Admins can configure working hours, block full days or specific time ranges, and manage all reservations in the dashboard.
Features
- ⏰ Dynamic Time Slots (configurable: 15 / 30 / 60 minutes)
- 📅 Weekly Calendar View for users to select available days
- 🚫 Block Full Days (Holidays)
- 🕑 Block Specific Time Ranges inside a day (e.g., lunch break)
- ✅ Booking Form with name, email, and phone number
- 🔒 Prevents reservations in past dates or expired time slots
- 👨💻 Admin Panel Management:
- List all reservations
- Change booking status (pending / confirmed / canceled)
- ⚙️ Advanced Settings in Admin Panel:
- Configure slot length (minutes)
- Define daily open & close hours
- Set the week start day (Mon / Sun, etc.)
- 🎨 Modern & Responsive Frontend Widget built with AlpineJS
Routes & URLs
Frontend
- Booking widget:
https://yourdomain.com/booking
Admin Panel
- Reservation list:
/admin/booking
- Booking settings:
/admin/booking/settings
- Block full days:
/admin/booking/blocked-dates
- Block specific time ranges:
/admin/booking/blocked-times
Installation & Usage
- Copy the plugin folder to:
/platform/plugins/booking
- Run migrations to create the database tables:
php artisan migrate
- Go to the admin panel → Plugins and activate Booking.
- Configure the plugin in Admin → Booking → Settings:
- Slot duration (minutes)
- Daily open/close times
- Week start day
- The booking widget will now be available at:
/booking
Database Structure
- bookings → stores reservations (name, email, phone, date, start_time, end_time, status)
- blocked_dates → full-day holidays
- blocked_times → blocked time ranges in a day
Frontend Demo
- Scrollable weekly calendar
- Show available and unavailable slots
- “Closed” label for holidays or blocked ranges
- Past days/times disabled automatically
- Responsive booking form (Name, Email, Phone)
This plugin is the perfect solution for businesses like salons, clinics, consultants, or any service that requires online reservations.
With a simple configuration and a user-friendly design, you can have a complete booking system ready in minutes.