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.
Data Dashboard
Build Database-Backed Apps
Build a Simple Feedback Form
Build a data-entry app, and learn the techniques fundamental to building any Anvil app. In this tutorial, you will:
- Write server-side Python
- Build your User Interface
- Write client-side Python
- Store data in a database
- Deploy your app