💡 Inspiration

We live in an era where 80% of our romantic and personal interactions happen via text, yet text is a medium stripped of tone, body language, and nuance. We noticed that people often screenshot conversations to send to friends asking, "What did they mean by this?" or "Was I too harsh?"

We wanted to build an AI that acts as that objective best friend—one with a PhD in psychology. Inspired by the "Human Interaction" theme, ConvoIQ aims to decode the digital signals we send each other to foster healthier, more understanding relationships.

🤖 What it does

ConvoIQ takes a raw chat export (like a WhatsApp or iMessage log) and turns it into a comprehensive "Relationship Health Report."

  1. Profiles the Dynamic: It identifies if your partner has an Anxious or Avoidant attachment style based on response times and keyword usage.
  2. Visualizes Momentum: It graphs the "velocity" of the conversation, showing who initiates more and if the connection is fading.
  3. The "Conflict Rewind": This is our flagship feature. It identifies the exact moment a conversation turned into an argument and generates 3 alternative responses you could have sent to de-escalate the situation, teaching you better communication skills for next time.
  4. Interactive Coaching: Users can chat with the AI to ask specific advice about the uploaded relationship data.

🏗️ How we built it

  • The Brains: We used Google's Gemini 3 Flash model for the heavy lifting of analyzing long chat logs because of its large context window and speed. We engineered complex prompts with JSON Schema enforcement to ensure the AI returns structured data (metrics, psychological profiles, and array-based predictions) that our frontend can render reliably.
  • The Frontend: Built with React 19 and TypeScript for type safety. We used Tailwind CSS for a clean, modern aesthetic that feels calming and trustworthy.
  • The Visuals: We implemented Recharts for the momentum area charts and D3.js for a custom "Emotional Spectrum" bubble chart that clusters feelings by intensity and color.
  • The Architecture: We used a no-build ES Module approach (via importmap and esm.sh), allowing the app to run directly in the browser without complex bundlers like Webpack or Vite.

🚧 Challenges we ran into

  • Structured JSON Reliability: Getting an LLM to consistently output complex, nested JSON objects (with arrays of conflicts, predictions, and messages) without hallucinating syntax errors was tough. We solved this by using strict schema definitions in the Gemini API config.
  • Visualizing Abstract Emotions: It's hard to visualize "resentment" or "excitement." We had to create a mapping system that converts emotion labels into colors and coordinates for the D3 bubble chart.
  • Privacy & Context: We had to ensure the prompt instructions were robust enough to handle various chat formats (timestamps, names) without leaking data or getting confused by slang.

🏆 Accomplishments that we're proud of

  • The "Rewind" Engine: Successfully building a feature that doesn't just analyze the past but generates plausible alternative timelines for arguments. It feels like magic to see what a "Secure" response would have looked like in the heat of the moment.
  • Instant Psychological Profiling: accurately deducing "Love Languages" and "Attachment Styles" from as little as 20 messages.
  • Aesthetics: Creating a UI that feels professional and empathetic, avoiding the "cold" look of standard dashboards.

📚 What we learned

  • Prompt Engineering is UI Design: In AI apps, the quality of the prompt determines the quality of the UI. If the AI misses a field, the UI breaks. We learned to treat prompts as code.
  • Digital Nuance: We learned how much human interaction relies on "unspoken" variables like response latency (time between texts), which turned out to be a huge predictor of interest levels.

🔮 What's next for ConvoIQ

  • Real-time Integration: Building a browser extension for WhatsApp Web to provide real-time suggestions as you type.
  • Voice Note Analysis: Using Gemini's multimodal capabilities to analyze the tone of voice notes, not just the text.
  • Long-term Tracking: Allowing users to upload logs over months to see how their "Relationship Health Score" trends over a year.
Share this project:

Updates