Inspiration

Skin cancer is the most common cancer worldwide, yet early detection increases survival rates to 99%. The problem: dermatologist access is limited, especially in underserved areas. We wanted to put a preliminary screening tool in everyone's pocket.

What it does

Noma analyzes skin lesions using AI to provide informational insights.

Questionnaire — Location, duration, and recent changes (like a dermatologist would ask) Camera — Guided capture with crosshair overlay Analysis — AI classifies the image and generates a contextual summary Results — Confidence score, color-coded severity, plain-language summary, and next steps

Always emphasizes: this is not a medical diagnosis.

How we built it

React Native + Expo — Cross-platform mobile app HuggingFace — Skin lesion classification model (trained on 50,000+ images) Google Gemini — Combines image results with questionnaire answers for contextual analysis react-native-reanimated* — Smooth animations **react-native-svg — Animated progress indicator

Challenges we ran into

  • When we were creating the prompt to Gemini that analyzes our data, we had a challenge crafting responsible messaging that informs without alarming.
  • Handling variable image quality from different devices / lighting / zooming (in/out)
  • Version control (merge conflicts)

Accomplishments that we're proud of

  • Polished, calming UX appropriate for a health app
  • Smooth connection of AI model / pipeline (Gemini) to analyze hugging face model and user data
  • Responsible design with clear disclaimers throughout

What we learned

  • Integrating multiple AI services (Hugging Face + Gemini)
  • Prompt engineering for structured LLM outputs
  • Mobile image manipulation and optimization
  • Designing health apps that balance helpfulness with responsibility

What's next for Noma

  • User accounts to track changes and provide more informative results
  • Try to connect with local dermatologists (telehealth)
  • Clinical validation and expand with more models for expanded condition condition detection

Built With

Share this project:

Updates