Inspiration
With the spread of the COVID-19 pandemic, many high risk individuals are unable to go out and purchase essential goods such as groceries or healthcare products. Our app aims to be a simple, easy-to-use solution to facilitate group buys of such goods amongst small communities and neighbourhoods. Group purchasing of essential goods not only limits the potential spread of COVID-19, but also saves waste and limits GHG emissions.
What it does
At it's core, the app is meant to promote small communities to participate and host group purchases of essential goods within themselves. Users input wanted items into a list that everyone in the community can see, and then a designated purchaser uses this list to purchase items for the neighbourhood.
How we built it
On the front-end, we used Android Studio alongside Java to create a simple UI for users to input their desired purchases into lists that everyone in the group/neighbourhood can add to. With respect to the back-end, we used Mongoose for schema validation, MongoDB Atlas to host our database, Express for routing, and developed a custom-made authentication module for protecting our endpoints. Finally Postman was used to test and debug endpoints, and AWS to host the server.
Challenges we ran into
Our team was completely new to nearly every aspect of this project. We had little experience in database management and user authentication, and next to none in mobile development. It took us about 5 hours just to get our environments setup and get up to speed on the technologies we chose to use.
When it came to authenticating users, we had lots of trouble getting Google Authentication to work. We sunk a lot of time into this issue and finally decided to develop a novel authentication methodology of our own.
Accomplishments that we're proud of
We're incredibly humbled to have learned so much in such little time. We chose this project because we felt we would be challenged as software developers in our choice of technologies and implementation. Nearly every single technology used in this project was completely new to each of us, and we feel like we learned a lot of new things, such as how to use Android Studio, developing a custom API overnight, and the principles of user authentication.
We're also proud of having come into the hackathon with an initial idea and being able to pivot quickly in another direction, scrapping our original idea in favor of grocerWE.
What we learned
We learned that mobile development can be rewarding and principles of software construction learned in junior courses were invaluable to the creation of this project. Additionally, we also learned how important user authentication is and how it's prevalent in nearly all of our apps that we use today. Creating this app also helped us realize the impact of technology on society today, and how a simple idea can help unite people together in a global pandemic.
What's next for grocerWE
Given the time constraints of the hackathon, and how inexperienced our group was to these new technologies, there are many things that we wanted for grocerWE that we weren't quite able to implement.
We'd like to be able to add Google Maps integration, where users are able to add their address to their profile in order to make delivery of groceries easier on the designated purchaser. Additionally, user roles such as purchaser or orderer were not really implemented.
For the above reasons, we considered these issues out of scope and focused our time on other fundamental aspects of grocerWE.
Log in or sign up for Devpost to join the conversation.