A hack-a-thon plug-and-play Django booking form app for rapid prototyping and tech demos.
This project is a white-label booking system designed to be easily integrated ("bolted on") to any Django site. It provides a simple booking form, time slot management, and guest reservation workflow. The app is ideal for demos, or as a starting point for more advanced booking solutions.
- Bookable Items: Define resources (tables, rooms, courts, etc.) that can be reserved.
- Time Slot Management: Create and manage available time slots for each item.
- Guest Booking: Collect guest info and allow reservations without requiring user accounts.
- Admin Interface: Manage items, slots, and bookings via Django admin.
- HTMX Integration: Dynamic booking form updates and slot availability checks.
- Easy Bolt-On: Minimal changes required to add to an existing Django project.
- Python 3.13
- JavaScript
- HTML, CSS
- Django 4.2
- HTMX (dynamic frontend interactions)
- Bootstrap (optional, for styling)
- PostgreSQL
-
Clone the repo:
git clone https://github.com/your-org/White-Label-Booking-System.git cd White-Label-Booking-System -
Install dependencies:
python -m venv .venv source .venv/bin/activate pip install -r requirements.txt -
Apply migrations:
python manage.py migrate
-
Create a superuser (optional, for admin):
python manage.py createsuperuser
-
Run the server:
python manage.py runserver
-
Access the booking form:
- Visit http://127.0.0.1:8000/ for the booking demo.
- Visit
/admin/for management.
- Add bookable items and time slots via the admin interface.
- Guests can select a date and time slot, enter their info, and book.
- Admins can view, edit, and manage all bookings.
bookings/— Main booking app (models, views, templates)templates/— Project-wide templates (base, home, allauth, etc.)static/— CSS and JS assetswhite_label_booking/— Project settings and root URLs
- Extend models to add more fields (e.g., pricing, location).
- Customize templates for your brand.
- Integrate with payment or notification systems as needed.
Unit tests include:
Viewing booking pages Booking available slots Viewing personal bookings Cancelling bookings
Accessing staff dashboard Creating time slots Cancelling user bookings Booking for customers Deleting slots
Limited access to public pages Prevented access to protected features
Booking already booked slots Non-existent resources Invalid data formats Permission violations Duplicate creations Missing required data
Run with: python3 manage.py test bookings
- HTML
- CSS
- PY
- Lighthouse
MIT License
Demo Ready. Production Optional.


