Our inspiration stemmed from Picklehacks' topic of wild and zany ideas. We wanted to create an app that would provide value to the user while still keeping it nonsensical. Behold, Miles4Meows. By walking and keeping your phone charged, you are provided with a neat AI-generated kitten.
What it does
Miles4Meows works by monitoring the user's pedometer data and battery level. At midnight every day, our server will reach out to thiscatdoesnotexist.com to grab an AI-generated image of a cat. Our users will then see this image as their pet for the day. To see the image clearly, the user will have to reach a minimum number of steps as well as keep their phone charged.
How We built it
The app uses react-native in order to make apps for iPhone and Android. We used expo as a platform to quickly develop the app with minimal roadblocks. The app uses the phone's pedometer data to determine how blurry the image is: the more the user walks, the clearer the image. The battery percentage is used to determine the blurriness of the image: as the phone's battery dies, an image of a tombstone will slowly overtake the cat.
The purpose of this app is to remind users to get their daily steps in and keep their phones charged by providing a fun image of a cat as a reward.
The server runs on our local network to collect an AI-generated image of a cat from thiscatdoesnotexist.com. A cronjob is used to grab a new image at midnight. A Flask webserver is used to serve the image to apps.
Challenges we ran into
There were common issues with using technology we had never used before. Not knowing how to use react-native or cronjobs set us back a while. We were able to overcome most challenges by being persistent and reading the docs.
Accomplishments that we're proud of
We created a fully functional, networked app for both iPhone and Android in 24 hours with minimal prior knowledge.
What I learned
How to make an app for iPhone and Android at the same time.
What's next for Miles4Meows
If we were to add more to Miles4Meows, we would add step goals per user. We would also like to keep stats on how the pets do at the end of the day. Adding a share button for social media would also allow a competitive atmosphere between users.