C4 model · level 2 · container diagram
Repair booking system: containers
The deployable pieces inside a home-repair booking product, what each one is built with, and how they talk to each other and to the two outside services they depend on.
Repair booking system: containers
C4 container diagram of a repair booking system: a customer uses a web app backed by an API, a job queue, a worker and a database, with a payment provider and a messaging provider outside the system.
Repair Booking System
[Software System]
Books visits using [HTTPS]
Makes API calls to [JSON/HTTPS]
Reads and writes [SQL/TCP]
Queues jobs [TCP]
Takes deposits via [JSON/HTTPS]
Reads jobs from [TCP]
Writes to [SQL/TCP]
Sends SMS via [HTTPS]
Texts visit reminders to [SMS]
Customer
[Person]
Homeowner who books repair
visits and tracks the crew.
Web app
[Container: React, TypeScript]
Booking flow and live visit
tracking in the browser.
API
[Container: Node.js]
Bookings, pricing and crew
scheduling rules.
Job queue
[Container: Redis]
Reminder and retry jobs,
waiting for the worker.
Database
[Container: PostgreSQL]
Customers, visits, crews
and payments.
Worker
[Container: Node.js]
Sends reminders the day
before each visit.
Payment provider
[Software System]
Takes a card deposit
when a visit is booked.
Messaging provider
[Software System]
Delivers text messages
to customers’ phones.
LEGEND
Person
Container
Data store
External system
System boundary
HTTPS call
internal protocol
the container this view is about