Inspiration

Most health tools are reactive, people only act after symptoms get serious. Inspired by the Ending Pandemics Academy's "Spot the Spark" challenge, we wanted to build something Arizonans would actually want to open daily: a beautiful, low-friction wellness studio where a 30-second check-in turns into clear, AI-generated guidance for the individual and an early signal for the community. The goal is to catch outbreak signals from humans, animals, and the environment before a small cluster becomes a raging fire.

What it does

Early Eco Health Studio is a participatory health-intelligence platform (not a diagnosis tool) built around the One Health data parameters. It helps users:

Sign up / sign in securely with persistent JWT sessions Submit structured check-ins (vitals, symptoms, location, recent travel, animal/environmental exposure, lifestyle factors) Visualize their personal risk trajectory over time and a risk-distribution breakdown Browse paginated check-in history and drill into any entry for deeper context Receive AI-generated health suggestions, warnings, and recommended actions automatically, delivered via our /suggestions API the moment a check-in is submitted, with no extra clicks See a live Community Health Snapshot for Arizona cities (e.g., Tucson) with a Leaflet risk map, top symptoms, unhealthy-ratio, and high-risk alerts Track data freshness and backend usage for full transparency

How we built it

Frontend: React 18 + Vite, Tailwind, Framer Motion micro-interactions, Recharts visualizations, React-Leaflet for the community risk map, Lucide icons, Sonner toasts, dark aurora glassmorphism theme Backend: FastAPI + MongoDB Atlas (Motor/PyMongo), JWT session auth with dynamic secret, structured Pydantic schemas for check-ins, suggestions, and community summaries AI layer: Anthropic Claude API for automatic risk classification and natural-language suggestions on every check-in; community-level aggregation by city or geo-radius Architecture: modular API client, error boundaries, defensive empty/loading states, 15-minute background population loop for demo data, deployed on Vercel Built with: Claude Code, Cursor, OpenAPI, GitHub

Challenges we ran into

Mapping the One Health parameter set into a check-in flow that still feels like 30 seconds, not a clinical intake form Surfacing backend validation errors as user-friendly guidance Resolving CORS/preflight behavior across two Vercel deployments Preventing crashes from inconsistent timestamp formats across check-ins Keeping AI suggestions fast and contextual without overstating certainty or leaking PII Preserving auth sessions across refreshes while keeping logout predictable Balancing high-fidelity visuals (aurora theme, motion, map) with mobile performance

What we learned

For participatory surveillance, trust = UX. If the app feels clinical or slow, people stop reporting and the early-warning signal dies. Automatic AI suggestions on every submission dramatically increase perceived value, users see immediate benefit, not just data extraction Clear separation between support and diagnosis is non-negotiable for health products Modular API + component structure let us iterate the UI rapidly without touching business logic Small details (toasts, focus states, motion, empty states) are what make a wellness product feel premium

What's next

Model card & human-in-the-loop: publish an explainability card for the risk model; route high-risk community signals to public-health reviewers before alerting Arizona rollout: sub-segment engagement for UA students, rural and tribal communities, and travelers via PHX/TUS airports One Health expansion: animal and environmental self-reports (mosquito sightings, livestock symptoms) on the same map Integrations: EpiCore API, CDC travel guidelines, airline route data, NOAA weather/vector data Deeper personalization, configurable alert sensitivity, caregiver/team views with consent controls Spanish-language UI, deployment hardening, analytics, performance optimization.

Built With

Share this project:

Updates