💡 Inspiration

I was done. Done being influenced. Done burning my face with "miracle" products because a 15-second TikTok told me to. And honestly? I was done paying rent-level prices for skincare that didn't do stuff to my face. I realized I was googling and using Gemini a lotwhen I was at the store and wasting a lot of time making sure I bought a good product.

I built BuyOrBye alone because I was done wasting hours in the store. I wanted to know: What if an AI could see my shelf, understand chemistry better than a marketing team, and actually protect my wallet?

🧪 What it does

BuyOrBye is a ruthless AI dermatologist and chemist that protects your skin and your money.

  • The "Truth Lens" (Agentic Camera): A real-time scanner that identifies "Molecular Dupes" (identical formulas) for $\approx 90\%$ less cost. It uses dynamic, agentic HUD instructions to get the perfect scan.
  • Routine Conflict Engine: Scans your entire bathroom shelf at once to stop "Chemical Warfare" (e.g., Vitamin C + Retinol) before you damage your skin barrier.
  • LIAR LIAR: Watches TikToks/Reels, listens to the hype, and cross-references claims against the actual ingredient list to scream "CAP" or "FACT" in real-time.
  • Savings Dashboard: A dedicated counter tracking every dollar saved by choosing science over marketing.

⚙️ How I built it

I leveraged the Gemini 3 ecosystem to build a high-speed pipeline grounded in scientific reality.

  • Agent-First Development (Google Antigravity): I used Google Antigravity as my primary platform. It allowed me to orchestrate the "Truth Lens" agents, managing complex state (user movement, focus, lighting) and delivering dynamic instructions without latency.
  • Context Caching: To prevent medical hallucinations, I loaded a 32k+ token "Chemist's Handbook" into Gemini 3's working memory using v1beta Context Caching. This enables deep Chain-of-Thought reasoning on molecular interactions.
  • Model Arbitrage: I route high-speed identification to Gemini 3 Flash and complex toxicological analysis to Gemini 3 Pro to balance latency and depth.
  • Backend: Built on FastAPI with Atomic SSE Parsing to stream complex AI reasoning fluidly to the Flutter frontend, even on mobile networks.

🚧 Challenges I ran into

  • Latency vs. Accuracy: High-fidelity OCR takes time. I solved this by using Flash for the initial "lock" and caching context for the deep analysis. It also takes quite some tokens. I optimized the token consumption where possible but its a thin line between saving tokens and giving up speed in the app.
  • Video Sync: Mapping a spoken lie in a video to a specific ingredient on a package was difficult. I fine-tuned prompts to force the model to timestamp the "lie" against visual evidence.
  • Guard rails: Implementing the right guard rails was hard. You want to have that sweet spot between speed, a nice persona but also accurate and safe information. That sweet spot was not easy to find.

🔮 What's next for BuyOrBye

I am turning this project into a movement—starting with my inner circle.

  • The "Squad" Release: I'm sharing the APK with my friends immediately. I want them to break it, use it, and help me refine the "ruthless" persona.
  • Face Analysis: We are already planning the next major feature: using the camera to track actual skin progress over time and correlating it with the routine changes the AI suggests.
  • Community Development: My goal is to open up the repo to my friends so we can hack on new features together, turning BuyOrBye into a community-led resistance against overpriced skincare.

🛠️ Tech Stack

  • Dev Platform: Google Antigravity (Agentic Orchestration)
  • Frontend: Flutter (3.x)
  • Backend: FastAPI + Google Generative AI SDK
  • AI: Gemini 3 Pro & Flash (Multimodal Streaming)

📜 License

MIT

Built With

  • antigravity
  • context-caching
  • dart
  • fastapi
  • flutter
  • gemini-3-flash
  • google-antigravity
  • google-gemini-3-preview
  • google-generative-ai-sdk
  • google-search-grounding
  • python
  • server-sent-events
Share this project:

Updates