Inspiration
Urban freshwater ecosystems keep cities alive, but they're monitored far less than they should be. Experts can't be everywhere, so citizen science has to fill the gap — yet most water-reporting tools use confusing terminology, and a confident wrong observation is worse than none at all. I wanted to build the tool I wish existed: one that treats the citizen as a capable observer and fixes data quality at the moment of collection, not after.
What it does
AquaLens is a conversational field companion for stream health. You stand at the water's edge and answer 7 plain-language questions — one location and six observations (clarity, smell, surface, wildlife, rain, and outlets). About a minute, no equipment. While you answer, 8 ecological cross-checks compare your observations for contradictions — crystal-clear water that smells of rotten eggs, fish swimming where a chemical signal was reported. When a flag fires, you resolve it: keep your answer or recheck it. That decision is recorded in the report.
The result is an explainable 0–100 Stream Health Score where every deduction is named, a confidence note that shows its own math, and a One Health story card linking ecosystem to people to the next step. It also validates place names honestly (rejecting junk instead of pretending to verify) and never pretends a field check is a lab test.
How we built it
HTML, CSS, and JavaScript — no backend, no build step, no dependencies. It runs fully offline from GitHub Pages, so it works on any phone browser at the water's edge. The "AI" is an explainable rule engine: 8 contradiction patterns, a transparent scoring table, and a human-in-the-loop resolution flow — every decision the system makes is visible to the observer.
Challenges we ran into
The hardest part was trust: how do you correct someone's observation without talking down to them? The answer was the flag-resolution flow — Lens points out what deserves another look, but the person at the water always decides. I also had to resist pretending the app can do things it can't, like map-verifying a place offline.
Accomplishments that we're proud of
- Built a working citizen-science tool solo that catches observation errors live — one check takes about a minute, no equipment needed.
- The flag-resolution flow: the system questions contradictions, but the human at the water always makes the final call.
- Every score deduction is named, and the confidence math is shown — no black box.
- Honest validation: it rejects junk place names instead of pretending to verify them.
- Fully offline, vanilla JavaScript, free on GitHub Pages — runs on any phone at the water's edge.
What we learned
Data quality is a design problem, not just a data problem — and showing your work (named deductions, visible confidence math) earns more trust than a black-box score ever could.
What's next for AquaLens
Photo evidence per observation, multilingual interviews, and feeding verified check-ins into wider water-data platforms like the OneAquaHealth citizen science network.
Log in or sign up for Devpost to join the conversation.