Inspiration
I was inspired by the idea of using technology to help people use less technology. I often found myself doomscrolling on my phone and overusing electronics instead of exploring the world around me. The challenge of finding interesting things to do locally and the desire to reconnect with my environment led me to create EtherEscape.
What it does
EtherEscape is a web application that helps users discover and schedule activities based on their interests and current location. The app provides activity suggestions powered by a language model and geolocation data, allows users to schedule and verify events, and tracks user engagement through a points system.
How we built it
I built EtherEscape using a modern tech stack and a mix of APIs and algorithms:
- Tech Stack:
- Flask for the backend web application
- MongoDB for data storage
- Flask-Login for user authentication
- APIs and Tools:
- Gemini API for generating activity suggestions using Retrieval Augmented Generation (RAG) techniques to enhance user experience with a large language model.
- Browser Geolocation API to determine the user’s location.
- Google Maps APIs integrated within Gemini to provide location results.
- ip-api.com to fetch location information based on the user's IP address.
- Algorithms:
- The Haversine formula is used to calculate distances between two geographic coordinates, ensuring accurate proximity verification for events.
Challenges I ran into
During development, I encountered several challenges:
- Smart Contract Verification: I experienced errors when trying to implement the community events feature using Ethereum-based smart contracts for event verification. Deploying our own contract proved to be more complex than expected.
- Time Constraints: The hackathon’s time constraints meant that I was not able to resolve these issues before the deadline fully.
- Technical Integration: Integrating multiple APIs and ensuring smooth communication between the backend, geolocation services, and language model required significant troubleshooting.
Accomplishments that I am proud of
- Successfully implementing core features such as user authentication, activity suggestion using Gemini API, and event scheduling with geolocation-based verification.
- Gaining hands-on experience with Retrieval Augmented Generation (RAG) techniques to improve user interaction with the app.
- Learning how to integrate various location-based APIs to enhance the overall user experience.
What I learned
Throughout the project, I expanded our knowledge in several key areas:
- The practical applications of RAG in enhancing user experience through large language models.
- The intricacies of working with geolocation APIs and integrating them effectively into a web application.
- Overcoming challenges related to blockchain and smart contract deployment, even if I didn't complete that feature. I still have to learn a lot about the frameworks and platforms available for this.
- The importance of time management and iterative development, especially in a hackathon setting.
- I also learned how to adapt to quick tech changes after I had to rewrite my whole project in Flask and start from scratch after realizing too late that using React and Next.js was not the best path of execution for me.
What's next for EtherEscape
Looking ahead, there are several exciting feature extensions I plan to explore:
- Public Events Organized by Users:
- Allow users to create and manage public events that others can join.
- Implement an RSVP system and facilitate community engagement.
- Ethereum-Based Smart Contracts for Event Verification:
- Integrate smart contracts to securely and immutably verify user attendance at community events.
- Enhance trust and decentralization in event verification.
- Extended Point System and Leaderboards:
- Expand the points system to include leaderboards and mini-competitions among friends.
- Offer rewards such as badges, achievements, and exclusive discounts at paid activity venues.
- Discounts and Rewards:
- Partner with local businesses to offer discounts and rewards for highly engaged users.
- Create a system where points can be redeemed for real-world benefits.
EtherEscape aims to evolve continuously, making it easier for users to explore and enjoy the activities around them while leveraging innovative technologies.
Built With
- bootstrap
- css
- flask
- geolocationapi
- google-gemini-api
- html5
- ip-api.com-geolocation
- javascript
- mongodb
- python

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