Skip to content
Created a web app and android app for client organisations who rescue animals. Builds a platform where any user can take a picture of any animal they feel should be rescued. We analyse GPS coordinates, image and user information using Google Cloud Vision, Firebase, Google Maps API to create a map clusterer on the web app.
CSS HTML Java JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
PetSafeAndroid
functions
landingpage
node_modules
public
.firebaserc
.gitignore
LICENSE
README.md
database.rules.json
firebase.json

README.md

Contributors

The following members contributed to this project:

  • Ayush Ranjan
  • Aditya Ramesh
  • Satyam Jindal

Inspiration

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.
You can’t perform that action at this time.