Inspiration
As a gamer and data enthusiast, I’ve always been fascinated by the sheer scale of game data on platforms like Steam. With thousands of games released and countless reviews and ratings pouring in, it’s nearly impossible to make sense of all that information without some intelligent tooling.
I wanted to build something that could help users—whether they’re gamers, developers, or researchers—gain insights from this overwhelming dataset. What inspired me was the idea that AI and MongoDB together can turn raw data into real stories, trends, and decisions.
What it does
SteamLens is an AI-powered web application that lets users explore insightful data about Steam games, with interactive charts and auto-generated summaries.
Users can select from a list of data pipelines—like “Top Developers by User Score” or “Most Popular Genres”—and instantly see:
- A rendered chart with meaningful metrics
- An AI-generated summary that explains the insight in plain English
The goal is to help users understand, interact with, and gain new perspectives from Steam game data, without having to write queries or code.
How I built it
SteamLens is built using the following stack:
- MongoDB Atlas: To store both raw Steam game data and a collection of saved aggregation pipelines.
- MongoDB Aggregation Framework: For dynamically querying the data based on user-selected insights.
- Flask (Python): As the backend API server to handle pipeline selection, data querying, and AI summarization.
- Google Cloud's Gemini API: For generating natural language summaries of the resulting data.
- React.js: To build a sleek, interactive frontend interface.
- Recharts.js: For rendering interactive bar charts.
- MongoDB Compass: Used during development to visually design and test aggregation pipelines before saving them.
Everything is wired to be modular: I can insert a new pipeline into MongoDB and it instantly appears in the app.
Challenges I ran into
- Integrating MongoDB Aggregations with a dynamic frontend: I had to carefully structure the pipelines and results to make them easy to chart.
- Ensuring the AI summaries were meaningful: Crafting the prompt for the Gemini model took some fine-tuning to make sure it interpreted the data correctly.
- Handling cross-origin issues: Ensuring smooth communication between the frontend and Flask API using CORS.
- Debugging local setup issues: At times, localhost wouldn't connect or some chart libraries threw errors—it took a lot of trial and error.
Accomplishments that I'm proud of
- Built an end-to-end full-stack app in just a few days.
- Seamlessly integrated MongoDB aggregation, Google Cloud AI, and dynamic frontend rendering.
- Made data exploration accessible to users who don’t have technical backgrounds.
- Learned how to optimize AI prompts to generate better, more helpful summaries.
What I learned
- How to use MongoDB pipelines effectively to extract meaningful insights from large datasets.
- How to integrate Google Cloud’s Gemini API into a real-world project.
- Improved my skills in full-stack development (React + Flask + MongoDB).
- Gained experience in prompt engineering for AI summarization.
- Discovered the power of combining structured data + unstructured AI generation to create intelligent tools.
What's next for SteamLens
- Add user authentication so users can save favorite pipelines.
- Allow users to design their own aggregations through a GUI.
- Explore vector search and semantic query using MongoDB Atlas Search.
- Add support for more datasets beyond Steam, like Twitch or Epic Games data.
- Deploy the app publicly so anyone can explore gaming trends with AI.
Log in or sign up for Devpost to join the conversation.