Inspiration
We have friends all over the world. It is always a pain to choose where to meet. Someones too far, someone is too close, someone's sad because we only meet in one place every year.
Thus we have built an app that would suggest the fairest meetup point -- closest city to geometric center of everyones' position (unless we meet in the middle of the Pacific).
What it does
The app allows users to create/join lobbies. These are short-lived sessions, where friends can input their current location by interacting with 3D globe and then geometric midpoint is found and shown. App also queries for a closest actual town or city nearby. Then we show users hotels they can stay in and fun places people can go to! We also have a Gemini help bot that can assist with picking the best place out of all options based on user preferences.
How we built it
We have dedicated significant amount of time for planning and prototyping. We used Copilot to rapidly iterate over ideas, pruning boring ones and selecting best ideas. We also took on different responsibilities to ensure that everyone has enough tasks to complete. We planned tasks in a way, so there will be minimal blockages and code could be as modular as possible. This not only allowed us to never stop building, but also made our code robust and maintainable.
When we faced challenges, we collectively brainstormed and split complex issues into sub-problems that could be easily taken actions upon. We never feared the new technology; if there was an API that could make our app better, even if we needed to step out of comfort zone, we took the risk.
We focused on bringing MVP to life and only in a few hours core functionalities were implemented. It allowed to have a structured way to grow our app and make it as polished as possible. a
We also used git for version control. It allowed us to all work on our versions of the app and seamlessly (or almost) merge changes together.
Every 3 hours we took a break, synced up and discussed our further steps and retrospective progress. This helped us keep eyes on the prize and stay focused during the entire development cycle.
Challenges we ran into
There is a scarcity of rich geodata APIs, so it took us quite a while to find the right one for us. The closest town search was either not working or was too slow. After a lot of iteration we found GeoBytes -- free API that solved all our need!
Another issue is that we were certain that Booking.com has a all-in-one public API that would show us hotels and other vital data. Basically we've built our app around that idea. But we found that no such API existed! In fact, no public Booking.com API exists! This threw us off for a bit and we've spent a couple hours trying to fit in other APIs that were also not ideal. Finally, we have discovered and set up Google Places -- a combination of Google Maps largest database and intelligent queries, which allowed us to search the most relevant places wherever we want to.
We are relaxed coders. We never committed ourselves to one complex project for 16-20 hours without major breaks. And that's all in a team!, which is also new for us. By the night we were exhausted and progress really slowed down. Taking quite a long walk is what helped us to freshen up and made us switch our perspective, allowing to fix old issues and introduce better functionality.
Accomplishments that we're proud of
We have learned and used so much technology! 3D interactive Earth map, scalable websockets, interfacing with so many outstanding APIs, working with spatial geodata, using new technologies and creating something coherent.
Getting to work in a team where everyone dedicated all their energy and brains is something novel. Honestly, coming back to solo development would feel awkward now.
At last, we've built a real app, that does a real thing and that people could use.
What we learned
Good plan is key. Without our detailed plan, which included task allocation, core functionality + nice-to-have features, time approximations and more, we wouldn't be where we are now. It helped us prevent conflicts and accelerated our development.
Team work is fun, actually. Before, like during first year project, teamwork felt like a burden while some do everything, others just sit and benefit from their ignorance. Here it was not a case! We've formed this kind of startup mentality. We moved rapidly, helped each other, never were troubled by an error and always progressed. We encouraged each other and thus stayed encouraged ourselves. And it was very fun.

Log in or sign up for Devpost to join the conversation.