Inspiration
In our town, there are a lot of elderlies who cannot perform many simple tasks, such as grocery shopping, due to the risk of being exposed to coronavirus. To fix this issue, our town created a Google Sheet for people to reach out for help. However, the Google Sheet was very ineffective, because it was unclear and difficult to read. Therefore our team decided to ease this issue through our new website, ShareNet!
What it does
Our website offers 2 different types of accounts: Helpers and Requesters. The requesters are able to send requests for help, each attached with a description. This would then be displayed on a Google Map, where the helpers are able to view them. The helpers then select the most convenient person to help and help them in private.
How we built it
For the backend, we primarily used NodeJS, which handles all the data storing, account verification, and converting an address into latitude and longitude. Then for the front-end, we used a mix of Javascript, HTML, and CSS. We used HTML for the static component and handled the interactive components with Javascript, using jQuery to display the Google Map.
Challenges we ran into
The most challenging part of the project was converting a physical address into its latitude and longitude. We attempted many methods and finally settled on Google Cloud's Map API. However, since we had never used Google Cloud's APIs, setting it up was quite a challenge. Another rather challenging obstacle we ran into was using GitHub properly. Since we were frequently pushing code, there were often merge conflicts, causing a lot of our code to be deleted in the merge process. Additionally, making all the functions synchronize with each other was also a rather challenging task.
Accomplishments that we are proud of
Despite the many difficulties, our final product met all of our designs and goals, which we are very proud of. Furthermore, we were also able to display the Google Map in its full glory, which although we thought was unlikely to be done in time, we successfully implemented in the end. Finally, we are just proud that we created something that can help the world and the community around us in such a turbulent time.
What we learned
For the backend, we learned a lot about accessing APIs and the their benefits and flaws. In addition, we also learned about non-euclidean geometry and how to calculate the distance between two locations on Earth, a spherical object. For the frontend, we learned a lot about CSS and HTML, allowing us to efficiently build pretty webpages and interactive components.
What's next for ShareNet
In future, we think we will try to add many more functionalities to better ShareNet. For example, adding a rating system so that malicious accounts or inhospitable users would be better identified. Furthermore, we think that there are a lot of time optimizations that can take place. For instance, instead of storing all of the requests in one place, we could partition it into several sections so that the searching for nearest algorithm's time complexity can be massively reduced. Finally, in the future, we would advertise the app so that more people use it, building a bigger and more loving community.
Log in or sign up for Devpost to join the conversation.