I was quite ill a few days ago and my good friends Ryan and James offered to deliver any essential items I need at my place so that I don't have to venture out while being sick. This gave us an idea in the context of this hackathon that why not build a platform where strangers can also help each other out. That's how we came up with Good People app.
What it does
The app is currently in a POC stage. The core idea is a peer-to-peer helping platform. It enables various users who do not necessarily know each other to help out either as suppliers of essential goods or as deliverers of essential goods. A core distinction with other similar apps would be that the interactions are peer to peer and we ourselves don't either supply or deliver goods. The app features three options for users
- You post a need for an essential item
- You offer to supply/deliver an essential item
- You offer to deliver an essential item from another user
The app takes the location, area radius etc. into consideration and suggests the best matching of the above. Thus someone in the vicinity of a person requiring an essential item who has the capability to deliver it can pick up the item from a person offering it and deliver it to the person in need.
How we built it
The app is built with spring boot and mongodb in the back-end and angular and nebular on the front-end. Both front-end and back-end uses postcodes-io to obtain location based on the postcode. Currently this works only in the UK. We have set up a continuous deployment pipeline on aws to deliver this to production on a github repo change basis. This enables us to work on the core business logic without having to manually deploy changes.
Challenges we ran into
Most of the challenges were working with aws. We ran into issues starting with setting up mongodb on aws in a simple manner. A lot of the time was spent on setting up the continuous deployment pipeline which was quite tricky.
Accomplishments that we are proud of
We have built an app with some of the essential components in 2 days' time and our app is deployed to production on a continuous automated basis. There is a lot of technology working together to get this app running on the ec2 machine, this was quite cool.
What we learned
A lot. Starting with working with aws, github integrations, various api for locations and distance calculation etc. Also learned more with spring boot, spring data mongo integration. On the front-end we learned working with nebular and postcodes-io.
What's next for Good People
The next steps are to productionise this app with more efforts on UX and a strong back-end to push notify matches to the users. The fundamental idea is still that this app becomes helpful to people in need and also gives an opportunity to some good people out there to give back to their community.
Try It out
amazon-ec2, amazon-web-services, angular.js, codepipeline, java, mongodb, nebular, postcodes-io, spring-boot, spring-data-mongodb