We noticed that several organizations across the country that focused on animal rescue didn't have a standard app where they could locate all unsheltered animals, however with PetPal, things are about to change. It allows anyone, anywhere to send pictures of homeless animals right into the open database from which these rescue organizations could access them. It's smart, user-friendly, easy-to-learn and implement, and gives us an opportunity to contribute towards the welfare of the community.

What it does

We built an android app for users who locate homeless animals and a web app for client organizations who want to rescue the homeless animals. The android app is made VERY user-friendly. All the users need to do is open the app and take a picture of the animal they see. The rest is handled by our backend. When the client organizations open the web app, they see a clustered map with all the animals and their photos marked with the address.

How we built it

The front-end was built with CSS, HTML, and JavaScript. The back-end was built with Firebase, Node.js, and JavaScript. The Android app pushes the image to cloud storage and the location and user information to firebase database. Our server-side code is triggered by any push to DB and our firebase function makes a call to Google Cloud Vision API with the image pushed and gets the appropriate animal name and updates the database with this information. We used Google Marker Clustering API to display all locations effectively and aesthetically along with pictures of animals and addresses (using reverse geocoding).

Challenges we ran into

  • We had issues with hosting google cloud vision calls on server side firebase functions. This was resolved with the support of the Google team. We really thank them!
  • Google Marker Clustering API was new to us and we spent a sizable amount of time getting it to work with all the features we needed.
  • Android getting GPS coordinates of the user.

Accomplishments that we're proud of

  • Successfully completing the project well ahead of time in a well planned out structure
  • Successfully implementing the Google Cloud Vision API effectively and efficiently.
  • Successfully pulling 2 all-nighters(alternating)

What we learned

  • How to use the Firebase functions
  • Implementing the Google Maps API
  • Making calls to Cloud Vision API using Node.js

What's next for PetPal

  • We could develop a facial recognition feature of animals which could help pet owners find their animals quicker.
  • We could easily integrate navigation technology with the web app such that when the client clicks on any marker, it gives him/her the fastest route from the current location to selected location.

Built With

Share this project: