Inspiration
A recall letter can arrive in seconds. Finding every affected item on a clinic's shelves is a different job.
Imagine a stock coordinator comparing that letter with a spreadsheet. One product has a different name. Another has no lot number. Which items need attention, who will check them, and how will the clinic record what happened?
That unfinished handoff inspired Lotlight. We chose a specific healthcare operations problem where useful AI could support an accountable process without pretending to make clinical decisions. Our demonstration uses a real historical Baxter notice and a fictional clinic. Stock, staff actions and evidence references are synthetic.
What it does
Lotlight connects the source notice, the stock record and the response.
- Bring the source. Import a text-based PDF or paste a notice. Preserve its wording, original link and explicit catalog-to-lot pairs.
- Reconcile the shelf. Import an inventory CSV. Exact checks compare manufacturer, catalog and lot identifiers. Browser AI compares descriptions to prioritize possible aliases.
- Resolve the unknowns. A missing lot number stays open. Correct one stock line after checking its physical label without resetting unrelated responses.
- Document the response. Confirm the source, assign an owner, record verification, and track handled quantities and evidence. Completion requires every recorded unit to be handled.
- Keep the record. Signed-in users have private saved workspaces. Export a JSON audit record, a review spreadsheet or a printable report.
AI cannot approve a source, invent a lot number or declare an item safe. Original manufacturer instructions and human review control the response.
How we built it
React and TypeScript power the interface and shared reconciliation engine. Firebase Hosting provides the public app, Firebase Authentication supports email sign-in, and a Cloud Run API verifies identity before reading or updating private Firestore records.
A quantized MiniLM sentence transformer runs inside a browser worker. It compares descriptions on the device while exact identifier rules determine whether stock matches the entered scope. Inventory descriptions are not sent to an AI inference API.
The workflow includes source and inventory versions, strict server-side commands and transactional revision checks. We tested pairing errors, missing identifiers, malformed imports, response gates, account isolation, persistence and exports. Independent AI-assisted review helped identify and fix edge cases.
Lotlight is a project by Shivam Gupta. AI tools assisted research, design, implementation, testing and presentation preparation. The demo uses disclosed AI narration over an actual product recording.
Challenges we ran into
The hardest part was deciding when the software should refuse to make a conclusion. A notice can contain several catalogs and lots. Combining them carelessly creates false matches. We restricted extraction to explicit paired scope and kept supporting excerpts visible. Ranges, exceptions and scanned PDFs need additional human work.
Similar wording is not reliable identity. An IV line extender may resemble an extension set, but that does not establish recall scope. AI prioritizes review; it does not replace catalog and lot evidence.
Corrections must not make old responses look current. Versioned records keep earlier work historical when its source or stock line changes. We also added clear retry states for failed configuration or account loads, so a network problem cannot present demo data as saved account data.
Accomplishments that we're proud of
We built a complete notice-to-response workflow with real browser inference, saved accounts, source review, individual corrections, evidence gates and portable exports.
The most important moment in the demo is deliberately ordinary: a missing lot number stays unresolved. The interface makes both progress and uncertainty visible. Once the physical record is corrected, the user can verify the item and document the response.
Our small synthetic AI smoke test revealed both useful alias matching and a missed description. We report this evidence without presenting it as clinical accuracy.
What we learned
Healthcare software needs to explain what it knows, where that information came from and what still needs a person. Useful AI can be small when it fits inside a reliable workflow with exact checks, ownership and an inspectable record.
Commercial viability starts with a specific buyer and an observable job. Our proposed first customer is an independent clinic using spreadsheet stock records. Whether Lotlight saves enough staff time to justify a subscription remains a question to test, not a result we have already achieved.
What's next for Lotlight
Run a supervised pilot with clinic operations staff using approved test records. Measure review time, unresolved-item handling and whether the exported evidence fits their existing process.
Our initial pricing hypothesis is $149 per clinic per month. We would test willingness to pay against measured value and actual hosting, support and onboarding costs. Product priorities include shared clinic roles, independently reviewed notice examples, better source extraction and stock-system integrations.
Lotlight is a tested hackathon MVP. It is not clinically validated, a regulatory compliance certification or ready for unsupervised clinical operations. We want to earn that trust through evidence.
Try Lotlight | Demo and project PDFs | Source code
Testing instructions
Open https://lotlight-care.web.app and select Open review. No account or API key is needed for the sample workflow. The fictional inventory contains 8 stock lines and 218 units. The supplied historical notice produces 2 exact matches covering 36 units and 2 uncertain lines covering 14 units. Review the source, assign an owner, verify a physical label in the fictional scenario, record handled quantities and evidence, then export the report. Missing identifiers must be corrected before a response can be completed.
Use Create account to test private saved workspaces, then reload and sign back in to verify persistence. Use synthetic data only. Full step-by-step instructions and the downloadable PDFs are at https://lotlight-care.web.app/judges/.
Log in or sign up for Devpost to join the conversation.