Two of our team members are avid runners who love to run with friends. However we find that it is hard to find people in our communities to run with, even on a college campus. We though that an app which would allow a user to run with and race their friends or others from anywhere around the world would make running far more fun for everyone and keep us from ever having to run completely alone.
What it does
Run the World is a platform that allows runners from all over the world to connect and do what they love as one big community. Let's break it down. Say you are in Nashville looking for a running buddy on an early Saturday morning. You probably don't want to drag your friends out of bed and force them to come on a run with you, but you also just HATE the idea of running alone. Run the World adds a third option to the conundrum: expand your horizons and run with people just like you from all over the world. It could be another running enthusiast from Nashville, a friend at another university across the country, or a complete stranger across the ocean. All you need to do is sign into the app, start or join a run, and you are on your way to a great workout. Not only that, the app will try to pair you up with other runners of similar skill level, so that you're always on your feet but never in over your head. Whether you're experienced or not, it's the perfect platform to jump in start running!
But that is not all that Run the Word can offer. We want Run the World to serve as a platform to allow a global community of runners to give back and do social good. Through our app, we can take charity runs to the next level. The plan for Run the World is to regularly feature charity runs through the app worldwide, vastly increasing the scope and potential for impact for these events. Participants will be able to donate through the app directly to the charities involved in the runs. For larger events, we can even plan routes through major cities and create impromptu meetups.
To summarize it all, Run the World is a platform for runners of all to connect with people all around the world and make a difference doing what they love.
How we built it
The backend was entirely built using PostGresQL on RDS, Lambda, and API gateway using the serverless framework/CloudFormation to organize and deploy code. The front end code was developed using Android Studio. Early on, we defined our use cases and split the work up, designing the backend and frontend to achieve these goals.
Challenges we ran into
The hardest challenge that we came across was in the organization of front and back end development. We had team members versed in each of these two areas, but we all needed to put in a few hours of research and trial and error when it came to combining these sides.
Accomplishments that we're proud of
The backend for the application was designed with a fully serverless architecture using AWS Lambda and API gateway. We had to rework the way we modeled the interactions with the backend to make it all event driven. However, it provides so many benefits such as nearly limitless and instant scalability, low costs, and great performance. One of our members came in with zero software development experience and learned enough to design much of the front end while others learned how to implement tricky functionalities.
What we learned
We all learned much over the course of this project, specifically in the areas of using tasks to run dynamically updating functions, accessing and using gps coordinates, and combining front and back end.
What's next for Run the World
We have so much more in mind for Run the World. We want to refine our android app and build for ios. We would like to enable the app to record apps and set meetup locations for planned local and private runs. We also want to include friend capability within the app, allowing users to easily invite people to run. Once the app can handle monetary exchange, we will allow for large scale charity runs. We would also like to enable in-app calling and leaderboard functionality.