Case study №08 Leads Manager 2026

Power-mode callingfor schooladmissions.

Counsellors who used to manage leads in a shared sheet now work a prioritised queue: tap to call, mark the outcome, move on. Admins see the leaderboard live.

Visit live site
leads-manager-sj.web.app
01 The brief

Shiv Jyoti's enrollment team needed less software, not more. The brief: one screen a counsellor can run all day, with the friction taken out of the inner loop — call, outcome, next lead. Behind it: webhook ingestion from Meta and Google, automatic call-log verification, and a real-time admin view across four schools.

  • 01 Power Mode — one-tap call, then an outcome screen the moment the dialer returns.
  • 02 Smart Priority Queue — sorts by grade, paid source, and fewer failed attempts.
  • 03 Call-log verification — visit scheduling is locked until a real call appears in the phone log; CNR is the only allowed outcome otherwise.
  • 04 Voice notes attached to lead history, recorded in-app and stored on Firebase Storage.
  • 05 Real-time admin: leaderboard, daily metrics (calls, talk time, visits, CNRs), source-efficiency charts.
Client

Shiv Jyoti Convent School (Mulund · Shrinathpuram · RTH · The Step)

Year

2026

Build by

Stacksmiths

Mobile

Flutter · Firebase Auth · Firestore · record/audioplayers

Admin

Next.js 16 · React 19 · Tailwind · Recharts

Cloud

Firebase Functions · asia-south1 · Meta Lead Ads webhooks

02 Brand system

An internal tool,
designed like a product.

Royal blue holds the chrome, emerald carries success, cool grey lets the queue breathe. Material 3 underneath because it's a Flutter app for Android counsellors — but the tap targets, the badge counters, and the colour-coded source chips were tuned by sitting next to the team for two days.

Royal#2563EB
Emerald#10B981
Cool#F3F4F6
Ink#0E0D0C
03 Process

Branding and engineering
at the same desk.

The compressed timeline made handoff impossible — so we didn't. AYB and Stacksmiths sat in one Slack, one Figma, one daily standup.

  1. W1

    Field study

    Two days at Shiv Jyoti Mulund. Watched counsellors handle 80 leads each on a shared sheet. Three friction points: missed calls, lost outcomes, no idea who'd already been called.

  2. W2–4

    Mobile + admin

    Flutter for the counsellor app (Android first), Next.js for the admin. Firestore as the single source of truth, Firebase Auth with role-based sidebar.

  3. W5–6

    Call verification

    Hooked into Android phone-log API. Visit scheduling locked unless a real call appears in the log within the last few minutes — if no call, only CNR is allowed.

  4. W7

    Webhooks + bundles

    Cloud Functions on asia-south1 for Meta Lead Ads + Google Forms ingestion. CSV bundle import with duplicate detection — up to 500 leads per atomic Firestore write.

  5. W8

    Rollout

    Rolled to four schools — Mulund, Shrinathpuram, RTH, The Step. Live leaderboard up day one. Idle timer in the app bar to keep counsellors honest.

05 Outcome

Less software,
more admissions.

0 schools, one pipeline Mulund · Shrinathpuram · RTH · The Step
0 leads / atomic write bulk CSV import with duplicate detection
0 day target to convert lead → admitted, tracked per source
0 roles, one app Admin · Counsellor · Tele Caller — sidebar gated by permission
Next case

TVAH

A 5,000-year-old ritual, online..

06 Notes

“Power-mode calling, smart priority queue, real-time admin — built for the way an enrollment team actually works.”

— Leads Manager, Stacksmiths × Shiv Jyoti

Mobile: Flutter with Firebase Auth + Firestore, voice notes via the record/audioplayers stack. Admin: Next.js 16 + React 19, Tailwind CSS 4, Lucide, Recharts. Cloud: Firebase Functions on asia-south1, Meta Lead Ads + Google Forms webhooks, Firebase Storage for voice notes. Hosted as leads-manager-sj on Firebase Hosting.