Skip to content

About

toothpaste cv is a browser-based visual oral health screening tool. It guides the user through five oral photos, sends them through a fixed AI screening rubric, and returns a clear report with severity, visible evidence, mouth-region context, and next steps.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

toothpaste.cv

DSOLVE 2026 | DRISHTI | College of Engineering Trivandrum (CET)

BUILD. SOLVE. DEMONSTRATE.

Problem: Oral Health Screening Widget
Team Name: Quriosity
Team Members: Abhineeth V S, Siddarth Narayan, Christta Ann Mathew, Ham P R
Institution: College of Engineering Trivandrum
Live Demo: https://toothpaste-cv.vercel.app/
Pitch Video: https://lnkd.in/p/gRzzE49X

Table of Contents


Problem Statement

Develop a free, two-minute oral health screening widget for web or smartphones that guides patients through a simple set of prompts and captures five quick images of their teeth.

The solution should analyse these images and generate an instant visual report highlighting potential oral health concerns such as crooked teeth, tooth wear, or discoloration. The goal is to provide patients with an easy, accessible way to get an initial visual assessment of their oral health and understand whether they may need to consult a dentist.

Why this matters

People often notice stains, chips, crowding, or gum changes early, but wait until pain starts before taking action. toothpaste.cv gives them a simple first step: guided photos, a plain report, and a clear reminder when a dentist should review it.


Our Solution

toothpaste.cv is a browser-based visual oral health screening tool. It guides the user through five oral photos, sends them through a fixed AI screening rubric, and returns a clear report with severity, visible evidence, mouth-region context, and next steps.

It is not a diagnosis, not an X-ray, and not a treatment plan. It is a triage tool that helps users decide whether a visible change needs a closer look from a licensed dentist.


What Makes It Different

toothpaste.cv has two differentiators: a multi-model vision report pipeline and a trained computer-vision evidence layer.

Multi-model screening report

The written report is not produced from a single unchecked prompt. The five photos are reviewed with OpenAI vision and, when configured, Anthropic Claude vision using the same oral-health rubric.

  • Parallel review - GPT and Claude review the same five images against the same screening categories.
  • Structured output - Zod validates the report shape before it reaches the user.
  • Conservative merge - when both models are available, the app merges findings carefully and avoids over-calling.
  • Polished patient language - the final report turns model output into clear severity, location, evidence, and next-step text.

This improves the report quality while keeping the product boundary clear: it is still screening, not diagnosis.

Trained CV evidence layer

toothpaste.cv also does not stop at a generic AI writeup. We trained a local computer-vision sidecar to give visual evidence on top of the written screening report.

  • Crowding detector - YOLOv11n trained on OMNI intraoral boxes mapped to crooked or rotated teeth.
  • Stain model - CLIP image embeddings with a linear classifier trained on oral disease images, plus a Lab b* yellowness heatmap.
  • Wear model - CLIP-based wear classifier with the same severity scale used in the report.
  • Visual overlays - boxes, heatmaps, and CV scores shown beside the report so users can see what the system is reacting to.
  • Conservative design - the CV model supports the demo and photo evidence, while the final report stays screening-only and avoids diagnosis claims.

This makes the product more than a prompt wrapper. The AI report explains the result, and the trained CV layer makes the visible evidence easier to inspect.


Key Features

  • Five guided photos - front bite, upper arch, lower arch, left side, and right side.
  • Instant visual report - summary, findings, severity labels, photo references, and mouth-region context.
  • Multi-model vision review - OpenAI and Claude can review the same photos for a more balanced report.
  • Trained CV evidence layer - custom YOLO and CLIP models add boxes, heatmaps, and scores for visible dental concerns.
  • Nine screening categories - crowding, wear, discoloration, gum health, plaque, bite alignment, spacing, chips, and possible decay.
  • Dentist-ready summary - report language users can save, export, and bring to a dental visit.
  • Optional timeline - signed-in users can save reports and compare later screenings.
  • Honest safety boundary - every flow clearly states that this is screening only, not medical diagnosis.

Screenshots & Demo

Screenshot Description
Landing page Landing page with the two-minute screening promise and clear not-a-diagnosis boundary.
Photo capture Guided five-photo capture flow with framing cues and upload or camera options.
Screening report Visual report with summary, findings, dental map, and photo evidence.
Oral health timeline Saved screenings timeline for tracking changes over time.
Item Link
Live demo https://toothpaste-cv.vercel.app/
Pitch video https://lnkd.in/p/gRzzE49X

Tech Stack

Layer Technology Why we chose it
Frontend Next.js 16, React 19, TypeScript, Tailwind CSS 4 Fast web app, strong typing, responsive UI, and easy deployment.
Backend Next.js API routes Keeps capture, report generation, and API calls in one app.
Database / Auth Supabase Auth, browser local storage Optional sign-in and saved screening timeline without forcing accounts.
ML / AI OpenAI, Anthropic Claude, Zod schema validation Structured visual screening report with a fixed rubric and safer output shape.
Computer Vision Python, FastAPI, YOLOv11n, OpenCLIP, OpenCV Trained local sidecar for crowding boxes, stain heatmaps, and wear or stain scoring.
PDF / Export html2canvas-pro, jsPDF Lets users save and share a report.
Hosting Vercel Simple public deployment for the demo.

Getting Started

Prerequisites

  • Node.js 20 or newer
  • npm
  • OpenAI API key for report generation
  • Optional Anthropic API key for second-model review
  • Optional Supabase project for sign-in and saved timelines
  • Optional Python environment for local CV overlays

Installation

git clone https://github.com/AbhineethVS/toothpaste-cv.git
cd toothpaste-cv
npm install

Environment Variables

Copy .env.local.example to .env.local and fill in the needed values.

Variable Description Required
OPENAI_API_KEY OpenAI key used by /api/analyze Yes
OPENAI_MODEL OpenAI vision model name Yes
ANTHROPIC_API_KEY Anthropic key for optional second review No
ANTHROPIC_MODEL Claude model name No
NEXT_PUBLIC_SUPABASE_URL Supabase project URL No
NEXT_PUBLIC_SUPABASE_ANON_KEY Supabase anon key No
CV_SIDECAR_URL Local CV sidecar URL No

Do not commit .env.local or real API keys.

Run the Web App

npm run dev

Open http://localhost:3000.

Optional CV Sidecar

Train or place the model weights first. See ml/README.md.

npm run cv:serve

If your Python environment is elsewhere, run:

python ml/serve.py

Documentation

Supporting documentation is available in docs/:

The project submission checklist is in SUBMISSION_CHECKLIST.md.


Usage / Demo Script

  1. Boot - open the live demo or run the app locally.
  2. Start screening - show the landing page and the "not a diagnosis" boundary.
  3. Capture photos - take or upload five guided views: front bite, upper arch, lower arch, left side, and right side.
  4. Generate report - wait for the AI screening result.
  5. Review findings - show severity, location, photo evidence, and plain next steps.
  6. Export or save - show PDF export and optional saved timeline.
  7. Wrap up - explain that flagged concerns should be reviewed by a dentist.

Limitations & Future Scope

Known Limitations

  • It only screens what is visible in phone photos.
  • It cannot detect cavities between teeth, root problems, bone issues, or gum pocket depth.
  • Poor lighting, blur, closed lips, and wrong angles can reduce quality.
  • AI output can vary slightly between runs.
  • The CV sidecar is optional and experimental. The written report is the main product output.
  • It is not a certified medical device.

Future Scope

  • Better photo quality checks before analysis.
  • Stronger computer-vision models trained on larger labelled dental datasets.
  • Dentist review workflow with user consent.
  • Long-term progress tracking across repeated screenings.
  • Multilingual reports for wider access.

Team

Name Role(s) GitHub Email
Abhineeth V S Full-stack, AI integration, product @AbhineethVS abhineethvs71@gmail.com
Siddarth Narayan Product, engineering @siddarthcet2007-glitch siddarthcet2007@gmail.com
Christta Ann Mathew Product, research @ChristtaAnn christtaannmathew@gmail.com
Ham P R Product, engineering @HAM-2K5 hamplivingston1020@gmail.com

Submission Checklist

  • Public repository is ready.
  • README follows the D-Solve template.
  • Live demo link is added.
  • Pitch video link is added.
  • Secrets are kept out of the repository.
  • App can be run from a fresh clone with the required environment variables.

Important Safety Note

toothpaste.cv provides preliminary visual screening only. It is not a medical diagnosis. Always consult a licensed dentist for oral health advice, urgent symptoms, or treatment decisions.

About

toothpaste cv is a browser-based visual oral health screening tool. It guides the user through five oral photos, sends them through a fixed AI screening rubric, and returns a clear report with severity, visible evidence, mouth-region context, and next steps.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages