A Template for a Booking App

This app can be used as a template for building an app to book timeslots for restaurant reservations, hair salon appointments etc. It features separate interfaces depending on if the user is an admin or not.

Booking a timeslot

The main form of the app displays a Date Picker and lists available timeslots based on the chosen date. Users can then select a timeslot to book, which is stored in the bookings Data Table. Admin users can make appointments for any registered user.

The bookings table stores the chosen datetime object and links to the users Data Table.

Viewing bookings

A separate form displays all current and past bookings made by the currently logged in user. If the user is an admin, they can see all bookings made by anyone. Here, users can cancel any upcoming booking and admins can easily email customers regarding their booking. The app automatically emails the user when a new booking is made or when a booking is cancelled.

Changing parameters

Admin users have access to an interface that allows them to change the business’s opening and closing hours (stored in the open_hours DataTable). Admins can also adjust how many bookings can be made per timeslot, the interval between each timeslot and how far in the future customers can make bookings. All of these parameters are stored in the settings table

Get Started

You can check out the app and modify it yourself by clicking here:

Want to learn more about using Anvil? Check out one of our tutorials.