🌈🏳️🌈Inspiration “History Is Written by the Victors” - Winston Churchill. This quotation raises the question, how can we preserve and share the history of LGBTQ+ communities across the nation who are frequently targeted with erasures and bans. The destruction of history dates back centuries with the burning of the Library of Alexandria, and within the past century, the Nazi book burnings. Today we face book bans that target LGBTQ writers and stories and executive orders 14151, 14168, 14244 that create a foundation for a list of forbidden terms in federal agencies that targets words like LGBTQ, diverse, and many more.
🌈🏳️🌈What it does QWER Maps ensures LGBTQ history is saved over time with integrity and availability. Using an interactive map users can hover over QWER Maps ensures LGBTQ+ history is saved over time with integrity and availability. Using an interactive map users can discover LGBTQ+ third places from the past and present. QWER maps brings together the community by allowing users to submit new locations on the map, and are validated with upvotes from community members. Every submission is backed by Solana blockchain, ensuring transparency, and tamper proof preservation of LGBTQ+ history.
QWER maps features a seamless UI that presents users with a navigable map, filters, chat assistant, and featured locations. Locations such as libraries, art spaces, bars, and more are represented by unique colored pins on the map. Each location allows users to discover the historical significance, key events, articles, and safety scores backed by a community driven upvote system. Filters allow users to explore spaces that represent what matters most to them; whether that be cities, upvotes, distance, current or historical locations, and more. A built in chat assistant powered by Gemini gives users the power to dive deep into QWER maps using natural conversation.
🌈🏳️🌈How We Built it QWER maps relies on data integrity and availability presented in on user friendly map. We used Python, Flask, and Gunicorn for the backend of QWER maps. The front end uses React 19, Typescript, Vite, and TailwindCSS 4.
The map interface is deployed using Mapbox GL JS and Supercluster with Framer Motion providing smooth animations of map traversal.
Critical to QWER maps mission is the preservation and validation of history, and by using Solana. For this reason, every submission and upvote is recorded as a memo transaction on Solana Devnet.
MongoDB powers our database submissions, and Redis 7 provides caches for commonly queried results.
Powered by Google Gemini AI, the bult in chat feature uses Vercel AI SDK.
🌈🏳️🌈Challenges We Ran Into MonogDB presented challenges due to port setup. Classifying documents within MongoDB required concrete classes for locations. We began with abstract details.
Migrating the app over to docker is proving to throw in issues with all of the components working together. When trying to run all of the components together in Docker they start to have issues with uploading submissions on the map and updating key chains in Solana.
Our Gemini chat sometimes will not return proper results when asking for information on locations in MongoDB.
🌈🏳️🌈Accomplishments That We Are Proud Of Many of these programs we are beginning to use for the first time. Our tech stack is expansive and features various programs put together to provide a tool that fulfills our mission. The ability for users to add in locations is something we are very proud of, and allows our map to continue to expand and provide a ledger for LGBTQ+ history.
🌈🏳️🌈What We Learned We learned how to use Mapbox, Solana, Docker, and gained a deeper understanding of how MongoDB and Gemini work together. We learned how to create an app that can serve the Queer community. We reinforced our understanding of GIT and used it collectively and collaboratively amongst each other.
🌈🏳️🌈What's Next For QWER maps We would like to ensure user authenticity. Using a form of authentication when a user upvotes or submits a new location is imperative to ensuring the safety of our users and the integrity of our data. Without an authentication feature it is possible for threat actors to use zombies to flood our site with traffic, upvotes, or bad locations. We also would like to add a downvote feature that allows for the removal of locations that may be added with bad intent. Using AI powered moderation or a heuristics model we can filter out hate speech that may be included in user submissions.

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