Inspiration
Freshwater ecosystems are part of our everyday lives, but most people only interact with environmental monitoring when there is a visible problem. We were inspired by a simple question:
What would make someone come back next week and contribute another useful observation?
Citizen science can generate valuable environmental information, but sustained participation is difficult. We wanted to make environmental contribution feel meaningful rather than like filling out another form.
That led us to AquaImpact — a community and gamification layer where every verified observation becomes part of something bigger. Instead of rewarding people with meaningless points alone, AquaImpact connects their contributions to community goals, meaningful rewards, and a personal Impact Passport that records their environmental participation.
Our idea is simple:
Turn every observation into impact.
What it does
AquaImpact turns freshwater observation into a repeatable community experience.
Participants can:
- Discover environmental missions.
- Complete observations about local water bodies.
- Submit evidence such as photographs.
- Earn Impact Credits for verified contributions.
- Maintain stewardship streaks.
- Participate in community-wide observation challenges.
- Track collective progress across locations.
- Unlock meaningful rewards.
- Build a personal Impact Passport containing their verified contribution history, achievements, locations, and challenges.
Our core loop is:
Observe → Verify → Earn → Unlock → Contribute → Return
The focus is not on competing for the highest score. Instead, we emphasize community progress — for example, helping a community reach 500 verified observations together.
The Impact Passport gives participation lasting value by turning environmental contributions into a portfolio-like record that can eventually be shared as a certificate or profile.
How we built it
We built AquaImpact as a mobile-first full-stack web application, allowing participants to use it easily from their phones while visiting water bodies and providing a richer dashboard experience on desktop.
Frontend
- React
- TypeScript
- Vite
- Tailwind CSS
- Responsive mobile-first interface
- Custom water-inspired animations and micro-interactions
The interface uses subtle ripples, flowing waves, animated progress bars, floating credit bursts, and milestone effects to make environmental contribution feel alive without turning the experience into a childish game.
Backend
- Node.js
- Express
- REST APIs
- JSON-based persistent datastore for the hackathon prototype
The backend handles authentication, missions, observations, community challenges, activity, rewards, achievements, and Impact Passport data.
The persistence layer was deliberately kept behind a repository-style interface so that the prototype can be migrated to SQLite or another production database without rewriting the frontend or core business logic.
Gamification
The most important part of the system is that rewards are tied to contribution, rather than simply logging in.
For example:
- Observation → +50 Impact Credits
- Useful evidence → +20 Impact Credits
- Weekly challenges → additional credits
- Stewardship streaks → additional rewards
- Community milestones → shared achievements
We also implemented duplicate/spam-aware contribution logic so that users cannot simply submit meaningless observations repeatedly to inflate their score.
Challenges we ran into
One of our biggest challenges was finding the right balance between gamification and environmental credibility.
We did not want AquaImpact to become just another points-and-badges application. The challenge was to make the rewards motivating while ensuring that the underlying action remained meaningful environmental participation.
We also had a technical challenge with database dependencies. Our original plan included SQLite through better-sqlite3, but its native compilation requirements were not compatible with our build environment. Rather than allowing that dependency to block the prototype, we implemented a lightweight JSON datastore behind a clean data-access layer while keeping the architecture ready for a future database migration.
Another challenge was designing the experience so that community progress mattered as much as individual achievement. Instead of making a conventional leaderboard the center of the product, we built shared challenges where every participant contributes toward the same goal.
Finally, we had to make environmental contribution feel engaging without making the interface distracting. This led us to use subtle water-based animations to communicate progress, verification, and achievement.
Accomplishments that we're proud of
We are especially proud that AquaImpact is more than a collection of static screens — the core participation loop actually works.
A participant can:
Create an account → start a mission → submit an observation → receive verification → earn Impact Credits → advance a community challenge → update their Impact Passport → progress toward rewards.
We built all nine major experiences:
- Landing
- Authentication
- Dashboard
- Missions
- Observation
- Verification / Impact Result
- Community
- Impact Passport
- Rewards
We are also proud of the Impact Passport concept. It transforms participation from temporary game progress into a lasting record of environmental contribution.
Most importantly, AquaImpact changes the question from:
"How do we get someone to submit one observation?"
to:
"How do we give them a reason to come back and contribute again?"
That is the problem we wanted to solve for Track 5.
What we learned
We learned that effective gamification is not necessarily about making everything competitive.
The most powerful motivation can be shared progress.
A participant may care more about helping their community reach 500 observations than being ranked #1. This shaped our decision to prioritize community challenges, collective milestones, and contribution history over a traditional leaderboard.
We also learned the importance of rewarding quality and consistency rather than quantity. If environmental participation is turned into a simple points race, users can be encouraged to submit low-value or repetitive data. Our reward model therefore connects credits to meaningful actions and verified contributions.
Technically, we learned how to build a complete full-stack prototype where frontend actions affect persistent backend state and immediately change the user's gamification progress.
What's next for AquaImpact
AquaImpact is currently a hackathon prototype, but the architecture is designed to grow into a real community participation platform.
Next, we would:
- Integrate directly with real OneAquaHealth citizen-science data and workflows.
- Replace the prototype datastore with a production database.
- Add stronger observation validation and human-in-the-loop review.
- Introduce real environmental data visualizations.
- Develop partnerships for meaningful participant rewards.
- Allow verified Impact Passports to become shareable environmental portfolios.
- Add localized community challenges for schools, colleges, neighborhoods, and cities.
- Explore additional accessibility and multilingual support.
- Connect community observations to broader ecosystem monitoring and One Health initiatives.
Our long-term vision is to make environmental participation something people want to return to, because every small action contributes to a larger story.
AquaImpact — Turn every observation into impact.
Built With
- api
- citizen
- css
- design
- environmental
- express.js
- gamification
- html
- javascript
- json
- node.js
- react
- responsive
- rest
- science
- tailwind
- typescript
- vite
Log in or sign up for Devpost to join the conversation.