Inspiration

Stray animals often suffer in the heat without access to clean water. We wanted a simple system for volunteers and admins to track, manage, and refill water bowls for animals.

What it does

Volunteers: add/update bowls, mark status, join groups, check pickup points. Admins: manage bowls, branches, volunteers, requests — all in one place. All data flows through our backend APIs (ready for mobile app integration).

How we built it

Backend APIs with Node.js + Express + MySQL Designed for role-based workflows (Volunteer vs Admin) Supports bowl requests, branches, pickup locations, status updates Ready to plug into a React Native app frontend

Challenges we ran into

Structuring APIs to scale across multiple branches Handling role-based access and permissions cleanly Designing endpoints that are mobile-first friendly

Accomplishments that we're proud of

Complete backend API layer for Water for Animals Clear separation of volunteer vs admin flows Database schema + APIs ready for immediate frontend integration

What we learned

Backend design is smoother when you think in user journeys first Role-based APIs require careful planning upfront Small features (like pickup locations, WhatsApp groups) make a huge community impact

What's next for Water for animals

Build the React Native app on top of APIs Add push notifications for refill reminders Expand to include food bowls and shelters

Share this project:

Updates