Skip to main content

Welcome to Reservations

Reservations is a comprehensive, multi-tenant booking management platform designed for businesses that need to manage appointments, classes, and customer bookings. Built with modern technologies, it provides both merchant-facing and customer-facing applications to streamline the entire reservation workflow.

Key Features

Explore the core capabilities that make Reservations a powerful booking management solution:

Multi-Tenant Merchant System

Complete merchant isolation with custom URL namespaces, role-based access control (Owner, Admin, Staff), and per-merchant settings and preferences.

Smart Booking Management

Support for appointments and group classes with recurring booking patterns, automated email confirmations and reminders, and intelligent scheduling with conflict detection.

Calendar & Scheduling

Full calendar view powered by FullCalendar, business hours management with timezone support, blocked time management, and external calendar integration (Google, Facebook).

Customer Experience

Self-service booking and cancellation, customer profiles with booking history, email notifications in multiple languages, and blacklist management for merchants.

Service Catalog

Flexible service definitions with phases, category organization, pricing and cost tracking with currency support, and min/max participant limits for group bookings.

Authentication & Security

JWT-based authentication with refresh tokens, OAuth support (Google, Facebook), role-based access control, and secure password handling with bcrypt.

Architecture Overview

Reservations is built as a monolithic application that serves both API endpoints and two React frontends:
  • Backend (Go): RESTful API with chi router, PostgreSQL with PostGIS, transactional booking logic
  • Jabulani (Merchant App): React app for business owners and staff to manage bookings
  • Tango (Customer App): React app for customers to browse services and make bookings
All three components are compiled into a single binary for simplified deployment.

Tech Stack Highlights

Backend Technologies

  • Go with chi router
  • PostgreSQL with PostGIS extension
  • pgx/v5 for database access
  • JWT authentication
  • Resend for email delivery

Frontend Technologies

  • React 19 with React Router
  • TanStack Query for data fetching
  • FullCalendar for scheduling UI
  • Tailwind CSS for styling
  • Mapbox for location features

Use Cases

Reservations is ideal for:
  • Service Businesses: Hair salons, spas, consulting firms
  • Fitness & Wellness: Yoga studios, gyms, personal trainers
  • Education: Tutoring centers, music lessons, workshops
  • Healthcare: Clinics, therapy practices, medical appointments
  • Events: Classes, workshops, group activities

Next Steps

Quickstart

Set up your development environment and run the application locally

Architecture

Understand the system architecture and how components interact

Build docs developers (and LLMs) love