Project Story: SafeSource - Your Shield Against "Forever Chemicals"

What Inspired Us

We started with a simple but alarming fact: 97% of Americans have PFAS in their blood. These "forever chemicals" do not break down. They accumulate over time. Most people never even know they are exposed.

We also discovered something important. The data already exists. Government agencies publish water reports. Researchers publish health studies. But the information is buried in long documents, complex terminology, and scattered sources.

People cannot act on what they cannot understand.

That realization inspired SafeSource. We wanted to turn hidden environmental data into something simple, clear, and actionable. We wanted to give people control over their exposure and their health.

Because your health should not depend on reading technical reports.


What We Built

SafeSource is an app that calculates a user's Risk Exposure Index (REI) and provides clear steps to reduce PFAS exposure.

Instead of overwhelming users with technical details, SafeSource analyzes common exposure sources:

  • Drinking water
  • Cookware and kitchen tools
  • Diet and food packaging
  • Cosmetics and personal care products
  • Household items
  • Grocery receipts (optional but powerful)

We combine these factors into one simple number from 0 to 100. This score helps users understand their exposure and track improvements over time.


How We Designed the Formula

We built the Risk Exposure Index (REI) by studying the most common sources of PFAS exposure. We reviewed research from environmental health studies, EPA reports, and consumer product analyses. We identified five major exposure pathways:

  1. Water exposure
  2. Cookware exposure
  3. Diet and food packaging
  4. Cosmetics and personal care products
  5. Household items

We assigned weights based on two factors:

  • How common the exposure is
  • How significant the contribution is to long-term PFAS accumulation

Water and diet received higher weights because research shows they are major contributors to PFAS intake. Cookware, cosmetics, and household items received moderate weights because exposure depends more on user behavior.

We later added receipt scanning to improve accuracy. This allowed us to directly detect high-risk purchases and reduce reliance on assumptions. When receipt data is available, the model shifts weight toward this more precise input.


Risk Exposure Index Formula

Without Receipt Scan

$$ REI = \text{round}\left( 0.25 \cdot s_{water} + 0.20 \cdot s_{cookware} + 0.25 \cdot s_{diet} + 0.15 \cdot s_{makeup} + 0.15 \cdot s_{household} \right) $$

With Receipt Scan

$$ REI = \text{round}\left( 0.20 \cdot s_{water} + 0.15 \cdot s_{cookware} + 0.20 \cdot s_{diet} + 0.10 \cdot s_{makeup} + 0.15 \cdot s_{household} + 0.20 \cdot s_{receipt} \right) $$

Where:

  • $s_i \in [0,100]$
  • Final REI is clamped to $[0,100]$

Implementation Note

The household score still exists in the formula even though the household step was removed from the UI. Since no household data is passed, it defaults to:

$$ s_{household} = 0 $$

Because of this:

  • Without receipt scan, active weights sum to 0.85
  • With receipt scan, weights sum to 1.00

This makes receipt scanning especially useful for improving accuracy.


The Twist: We Don't Just Warn You. We Help You

Most apps stop at warnings. SafeSource provides solutions:

  • Suggest safer cookware alternatives
  • Recommend low-PFAS products
  • Provide dietary strategies backed by research
  • Track exposure reduction over time

We shift the experience from fear to action.


Challenges We Faced

Making Complex Data Simple

PFAS research is technical and fragmented. Simplifying it and gaining insight are uphill battles. Furthermore, the government does not publicly disclose PFAS data.

Balancing Accuracy and Usability

We needed a model that felt scientific but stayed easy to understand. The weighted REI has serious flaws that need careful revision.

OCR Implementation

The picture scanning feature was complicated to implement, so we replaced some aspects of it with hard coded demo due to time constraints


What We Learned

This project taught us that technology can translate science into everyday decisions.

We learned:

  • Messy data is hard to analyse
  • Too many features to implement makes the workflow messy if you're not organized
  • Users want guidance, not just information
  • Small lifestyle changes can reduce long-term exposure

Our Vision

PFAS are called "forever chemicals." But exposure does not have to last forever.

SafeSource gives people knowledge.
SafeSource gives people control.
SafeSource gives people a plan.

SafeSource: Because your health shouldn't be a mystery.

Built With

  • efsa-pfas-half-life-reference-values
  • eslint
  • languages:-typescript
  • localstorage-tooling:-turbopack
  • lucide-react
  • lucide-react-backend:-fastapi
  • nih-biomonitoring-studies-auth:-web-crypto-api-(sha-256)
  • pillow-ai-/-apis:-google-gemini-vision-api-(receipt-ocr-+-product-risk-classification)-data:-epa-ucmr-5-(2023-public-water-monitoring-dataset)
  • pydantic-v2
  • pytest
  • python-frontend:-next.js-15
  • react-19
  • tailwind-css-v4
  • uvicorn
  • zustand-5
  • zustand-persist
Share this project:

Updates