Inspiration

As a licensed Environmental Health Officer, I've spent years watching facility owners across Nigeria fail inspections they could have passed — not out of negligence, but because professional environmental health assessment is invisible to them until an enforcement officer arrives. A food vendor in Ikorodu doesn't know her water storage is a cholera risk. A school administrator in Idah can't see that his drainage system scores a HIGH contamination risk. Professional inspections exist, but they're expensive, slow, and scarce.

I wanted to put a trained inspector in every pocket.

What it does

SanitovaCheck turns any Android phone into an AI-powered WASH (Water, Sanitation, Hygiene) compliance inspector:

  • Photo-based assessment — photograph any facility area (water source, kitchen, toilet block, waste disposal) and receive an instant AI-analyzed risk score
  • Professional risk reports — detailed assessments with reasoning, calibrated confidence levels, and actionable findings
  • PDF compliance certificates — exportable, shareable reports suitable for regulatory filings and facility records (2 free lifetime exports, unlimited with Pro)
  • Scan history & tracking — monitor compliance across multiple locations over time
  • SanitovaCheck Pro — subscription unlocks unlimited scans, full history, multi-location management, and priority support

How I built it

Android app: Native Kotlin with Jetpack Compose, CameraX for capture, Material 3 design. Built as a solo developer across a two-month window.

AI backend: Flask/Python API on Alibaba Cloud Function Compute, powered by Qwen vision-language models for image analysis and risk reasoning.

Monetization: RevenueCat SDK with a single monthly subscription (sanitovacheck_pro_monthly, NGN 6,450/mo with 3-day free trial), configured through RevenueCat's Product Catalog with the SanitovaCheck Pro entitlement and default offering.

Store journey: Navigated two Play Console rejections (health-app category restriction, test-key crash), recruited 29 beta testers via Google Form, completed a full 14-day closed test with 12+ opted-in testers, and shipped to production.

Challenges I faced

  • Play Console health policy: My first submission was rejected for selecting "Disease prevention and public health" — a category requiring an Organization account since August 2024. I re-scoped the app positioning, removed the Medical store tag, and resubmitted successfully.
  • RevenueCat test-key crash: A production crash on launch day, caught by testers within hours. Root cause: the app was configured with a RevenueCat test API key instead of a production key tied to a real Android app entry. Fixed by creating the real app entry in RevenueCat, swapping in the production key, and resubmitting — all within a single day.
  • Android 15+ 16KB page-size alignment: Required bumping CameraX from 1.3.4 to 1.4.1 to meet new Play Store requirements.
  • App icon asset orphaning: Image Asset Studio's "Name" field defaulted away from ic_launcher, orphaning new assets while the manifest still pointed to old ones. Caught by regenerating with the correct default name.

What I learned

  • Real users surface issues no emulator can — the test-key crash was found by a tester in minutes, not by my own testing across weeks
  • AI risk calibration matters more than raw accuracy: in one Idah LGA test case, the model correctly held at MEDIUM risk rather than overclaiming, which built more user trust than a confident wrong answer would have
  • RevenueCat's server-side product configuration is powerful — pricing, trials, and offerings can be adjusted without app rebuilds

What's next

  • Video capture for richer WASH evidence assessment
  • Structured guided prompts alongside photo analysis
  • Suggested treatment/remediation actions for risk scores below 5
  • iOS version once Android traction is established

Built With

Share this project:

Updates

Submission history