I've always loved to play soccer, and so does my roomate. We lost many friends however as we moved to college and we were struggling to find a group of kids to play soccer with, which is why I came up with this idea.
The app looks for parks near your location or near any location you pick. Using the Google Maps API, users can see on a map markers of each park, and when clicking on a marker, users can add an event or see who already created an event for a certain time that day, therefore people can see how many others will be playing at that field, court, etc., at that time.
I created a brand new React Native project. Installed some dependencies that allow me to have access to the native Apple Maps API and the device Geolocation. Read through a bunch of documentation on Google's Maps API to figure out how to use it in my project, and then started building the UI. Started with the App navigation implemented using react-navigation library. Then I set up all the global states I would have to manage such as user current location, theme, etc. After that I got to work on the map and API calls that would have to be made while the user uses the map. Created a firebase Realtime-Database to host my database so users can push events to the web and can get updates on what events other users have created. Created some form components so users can input their data when adding events, did some styling to the entire app, and ultimately finished by doing performance optimizations and testing the app for bugs.
The Google Maps API was very hard to navigate through and find what you wanted. I wasted more time than I wanted just setting up the API. I slept more than I should've, having started working on this project at 11 am on Saturday.
I'm proud that I got a working UI, API, and Database all together in less than 24 hours, and I got to learn a lot about how to use Google Maps' API which is incredibly fun to work with and I'll probably use it again.
I learned how to use the Google Maps API, learned how to better structure my project's filesystem, gained a better idea on how to structure a NOSQL database like Firebase Realtime Database, learned how to better recognize where performance optimizations can be made in React with things such as unecessary state updates.
I want to set up User Authentication which I did not get to set up this time. I would also like to add several features to make it more practical for users to use it. Ultimately once I feel it's good enough for testing, I would like to get it out as soon as possible in my University, and I've noticed that a lot of students play recreational sports outside, whether it's spikeball, soccer, volleyball, etc., I think this app could be very promising.
Log in or sign up for Devpost to join the conversation.