Inspiration

Tired of endless status meetings, we realized most could be replaced by quick async updates.
We built CommonRoom to collect feedback and insights—no meeting required.

What it does

CommonRoom allows team members to individually communicate their project status/any issues to the manager. Our app is a role-based interview management platform for company internals. Project Managers create an AI agent to conduct interviews which are like questionnaires to developers where they can then describe their progress orally. Here's what it offers:

  • 🎙️ Ask Questions
    Create interview-style questions and assign them based on roles.
  • 🧑‍🤝‍🧑 Role-Based Assignment
    Automatically routes questions to the right teammates by their roles.
  • 📝 Collect Responses
    Users respond with transcripts and interview links for async check-ins.
  • 🧠 AI Summarization
    Gemini summarizes both individual and group responses for quick insights.
  • 📊 Dashboards
    • My Questions: View questions you’ve created, track responses, and access summaries.
    • For Me: See all questions you’re assigned to answer and manage your responses.

Best use of Ribbon API:

  • Allow users to create interview flows as “Questionnaires”. This would usually be done by a Project Manager who would like to collect common information from developers using the same questions.
  • After an interview flow is created, it will automatically create interview links for each recipient that is part of the roles selected, store it in our MongoDB database so that each user can access their respective interview links
  • After they complete their interview/questionnaire, the manager and all other relevant parties can view their response or a summary of their response which saves time compared to traditional meetings. This is done through fetching the corresponding interview_ids that are stored in the /interview route which completes the full ribbon workflow of an interview.

How we built it

  • Frontend: Built with Next.js and React, styled using Tailwind CSS and ShadCN components for clean, responsive UI.
  • Backend: Powered by FastAPI, serving RESTful endpoints to manage questions, responses, roles, and summaries.
  • Database: Used MongoDB to store users, questions, responses, and role assignments with flexible document schemas.
  • Authentication: Integrated Auth0 to manage user login and role-based filtering of interview data.
  • AI Integration: Connected to Gemini 2.5 Flash via the Google Generative AI API to summarize responses individually and collectively.

Challenges we ran into

  • 🧩 Integrating Auth0 Authentication
    As first-time users of Auth0, we found its documentation complex and had trouble connecting login logic with our client-side components.
  • 🛠️ Learning New Tools on the Fly
    We had to quickly familiarize ourselves with a variety of unfamiliar technologies, from deployment tools to third-party APIs.
  • 🌐 Building a Full-Stack Web App
    Designing a frontend that could properly communicate with the backend and MongoDB database was a steep learning curve.
  • 🔗 Connecting Ribbon's API with MongoDB
    Integrating external data sources with our system required careful schema design and data syncing.

Accomplishments that we're proud of

  • 🔄 Front-End to Back-End Integration
    We learned how to connect user inputs from the frontend to backend logic—an essential skill that was new to most of us.
    • 🌱 Building Our First Full Stack Project
      This project was a great introduction to implementing a real database, designing backend routes, and tying everything together.
    • 🤖 Using a Generative AI API
      We successfully integrated Gemini to summarize responses, exploring the practical use of generative AI in workflows.
    • 💡 Creative Use of Ribbon’s AI
      We found a unique way to utilize Ribbon’s API to manage role-based interviews and automate insights from team responses.

What we learned

  • 🔧 Full Project Lifecycle
    From backend setup to frontend implementation and database integration, we gained hands-on experience across the stack.
  • 🔗 Connecting the Tech Stack
    We learned how to tie together different layers and debug issues that spanned frontend, backend, and database.
  • 🕒 Planning Under Pressure
    Working under a tight deadline taught us how to prioritize, adapt quickly, and collaborate effectively.
  • 🛠️ New Tools and Frameworks
    We worked with unfamiliar technologies like FastAPI, MongoDB, Auth0, and Gemini AI—and learned how to use them in a real-world setting.

What's next for CommonRoom

We’re excited about the future of CommonRoom. Here’s what could be added:

  • 🧠 Response Ranking
    Automatically score and prioritize responses based on clarity, sentiment, or depth. This ensures that product managers see the most insightful feedback first, helping them quickly identify valuable insights
  • 📊 Analytics Dashboard
    Visualize trends across responses—such as keyword frequency, sentiment over time, and response rates. Managers will get a bird’s-eye view of project status with the option to dive into individual replies when needed.
  • 🌍 Globalization Support
    Expand usability across companies, time zones, and languages—enabling more inclusive and seamless team communication worldwide.

Built With

Share this project:

Updates