How I built a booking tool that flags a missed lead in 15 minutes
I built a small tool for a salon. The problem was simple. A customer sends an enquiry, the owner is busy, and the reply comes late. By then the customer has often gone somewhere else.
So I built three parts that work together.
First, a booking form. The customer enters a name, phone, service, and preferred time. When they submit it, the lead is saved.
Second, a follow-up preview. As soon as the lead is saved, the tool makes the follow-up message right away, using the name, service, and time. For now this is only a preview. No real WhatsApp or SMS message is sent yet.
Third, an owner inbox. The owner sees every lead, newest first, with how long it has been waiting. If 15 minutes pass and no one marks the lead as attended, it gets a missed lead badge. One click on mark attended clears that badge.
I built the backend in Python with FastAPI. Leads are saved in SQLite. The front end is plain HTML and JavaScript, with no build step and no paid APIs.
What I learned was simple. The owner does not need more features. The owner needs to see, at a glance, which leads are still waiting. A clear inbox and a 15 minute alert do that job.
The next step is to connect a real WhatsApp or SMS service, so the preview message can actually go out.

