Allow customers to book appointments, make reservations or rent equipment without leaving your site.
For more detail.

Features
| Supported | Unsupported | |
|---|---|---|
| General Ex: image  | Booking duration Minimum duration Maximum duration Enable Calendar Range Picker? Calendar display mode ( Calendar always visible )  | Can be cancelled? Requires confirmation? Calendar display mode ( Display calendar on click )  | 
| Resources Ex: image  | Label Resources are… ( Customer selected ) Add/link Resource  | Resources are… ( Automatically assigned )  | 
| Availability Ex: image  | Minimum block bookable Maximum block bookable All dates are… ( available by default ) Check rules against…( All blocks being booked ) Add range  | Adjacent Buffering? All dates are… ( not-available by default ) Check rules against…( The starting block only ) Restrict selectable days?  | 
| Persons Ex: image  | Min persons Max persons Multiply all costs by person count Count persons as bookings  | Enable person types  | 
Requirement
- Cirilla 
v4.1.0or above - App builder 
v4.2.6or above - woocommerce-bookings 
v2.1.2or above ( plugin ) 
Getting started
- Web
– Install WooCommerce Bookings plugin follow guide docs.
– Then you can add new product with Bookable product type. 

- Mobile
 
- Copy woo_booking package and add to packages folder in cirilla project.
 - Import package in 
cirilla/pubspec.yaml 
Example:
woo_booking:
  path: ./packages/woo_booking
    Then run flutter pub get in your project
    3. Now, you can call ProductWooBooking widget in your product page
– Import this line to your product page
import 'package:woo_booking/product_booking.dart';
Example:
import 'package:woo_booking/product_booking.dart';
if (product!.type == productTypeBooking) {
      return ProductWooBooking(
        appointment: appointment, // Booking data.
        onChanged: onChangedAppointment, // Update booking data.
        productId: product!.id.toString(),
        getSlots: Provider.of<SettingStore>(context).requestHelper.getActiveHours,
        getBookingProduct: Provider.of<SettingStore>(context).requestHelper.getAppointmentProduct,
        getBookableDays: Provider.of<SettingStore>(context).requestHelper.getBookableDays,
      );
}
Resources in Bookings
Video example
Select range by start date and end date in bookings
