<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Hadi Kashif</title>
    <description>The latest articles on DEV Community by Hadi Kashif (@hadi_kashif_03cb37314f8d9).</description>
    <link>https://dev.to/hadi_kashif_03cb37314f8d9</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4226241%2Ff69f2f07-7abb-481c-a879-ea7731bbe48c.jpg</url>
      <title>DEV Community: Hadi Kashif</title>
      <link>https://dev.to/hadi_kashif_03cb37314f8d9</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/hadi_kashif_03cb37314f8d9"/>
    <language>en</language>
    <item>
      <title>How I built a booking tool that flags a missed lead in 15 minutes</title>
      <dc:creator>Hadi Kashif</dc:creator>
      <pubDate>Wed, 04 Nov 2026 12:54:41 +0000</pubDate>
      <link>https://dev.to/hadi_kashif_03cb37314f8d9/how-i-built-a-booking-tool-that-flags-a-missed-lead-in-15-minutes-915</link>
      <guid>https://dev.to/hadi_kashif_03cb37314f8d9/how-i-built-a-booking-tool-that-flags-a-missed-lead-in-15-minutes-915</guid>
      <description>&lt;p&gt;How I built a booking tool that flags a missed lead in 15 minutes&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;So I built three parts that work together.&lt;/p&gt;

&lt;p&gt;First, a booking form. The customer enters a name, phone, service, and preferred time. When they submit it, the lead is saved.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;The next step is to connect a real WhatsApp or SMS service, so the preview message can actually go out.&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>softwaredevelopment</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
