We were inspired to create our project to help lower our carbon footprint on the planet. We believe that the success of our planet relies on the strategic use of the finite resources available to us. By creating an application that helps friends, family, and neighbors collectively grocery shop whenever one user makes a trip, we can begin to reverse the detrimental environmental effects of unchecked human actions.
WHAT IT DOES
Our application was built to allow users who live within a user-defined distance of each other to create groups and grocery shop together when one user makes a trip. As a user makes a trip, others users will be notified and can begin adding their requested grocery items to the shopper’s queue before sending their share of the money. When the items are purchased, an email notification will be sent out to all members of the group to alert them that the shopper has purchased their items.
CHALLENGES WE RAN INTO
While coding in Java/Android Studio, it was a challenging task to not only design the front end, but create the connection from our backend to asynchronously update the grocery shopper’s list. The front end took around 10 hours just get a working build that wouldn’t break when building the project in Android Studio. To exacerbate that issue, we didn’t come prepared with the same android environment so only one person was able to code at a time on the computer that started the front end work. While that issue was being dealt with, our backend coding team ran into firewall and IP whitelisting issues with using MSU Student SQL services.
After discussing our options, we opted to use Amazon Web Services, specifically Amazon Elastic Beanstalk and Amazon Relational Database Services. This ensured that our backend could be updated asynchronously so that it could output JSON back to Android Studio.
Once the purchase orders are complete, the grocery shopper can submit a completed purchase order which sends out a push notification to group members.
WHAT WE LEARNED
Make sure you and your time go into a hackathon with a clear idea of what you want to build and where your strengths are. Near the end of the hackathon, always make sure at least one person stops coding to handle the paper work required with setting up DevPost and submitting everything. Also, because we had issues with our environment settings, at our next hackathon, we will probably try to learn Docker containers beforehand as well as download everything we need in case we run into internet performance issues again. Also, USBs are your best friend when the internet is bad.
ACCOMPLISHMENTS THAT WE'RE PROUD OF
None of us have ever completed the build of an android application prior to SpartaHack 2018. It took us 10 hours alone to figure out how to deal with the intricacies of Android Studio’s front end and probably another 10 hours just figure out how to get our backend working asynchronously. That being said we're proud just to have a working project to demo.
WHAT'S NEXT FOR KARTPOOL
We’re hoping to be able to find datasets from local stores so that we can add the capability to choose existing items from local stores to add to the grocery list queue. Additionally, we want to add smart car integration as well as a google maps api to more accurately calculate the amount of pollution reduced as a result of using our application.
GitHub Android Project
GitHub Server Backend