Back to Projects

LemonPI

My role on this project: Full Stack / AI / Cloud Engineer

Project Overview

An AI-powered shopping assistant that tells you whether a product is worth buying. Paste a product link from Amazon, eBay, Etsy, Walmart or almost any other online store, and the page is scraped and analysed to produce a verdict with the reasoning behind it, historic price comparisons, better-value alternatives, and an ESG and ethics score for the brand behind the product.

TypescriptNext.jsReactTailwind CSSPythonFastAPICeleryPostgreSQLpgvectorRedisOpenAIGeminiDockerAWS
Project Link
LemonPI

Achievements

  • Developed a fullstack AI shopping assistant with Next.js, React, TailwindCSS on the frontend and an async FastAPI backend in Python
  • Built a product scanning pipeline that extracts structured data from any e-commerce page, parsing embedded Schema.org and OpenGraph data first and falling back to an LLM for missing fields
  • Implemented a hallucination guard that discards any AI-extracted price that does not appear on the scraped page
  • Built a web scraping layer that gets past bot protection, using a paid unblocking service with per-marketplace proxy zones and a stealth Playwright browser with randomised fingerprints as fallback
  • Setup a vector database with PostgreSQL and pgvector, and implemented semantic similarity search for recommending better-value alternative products
  • Implemented a recommendation engine that searches the local catalogue first and falls back to scraping live web results in parallel with Celery chords, scoring each match on similarity, price and review quality
  • Implemented ESG and brand ethics scoring across seven categories using WikiRate and Yahoo Finance data, tailored to the issues each user cares about
  • Implemented AI deep research reports with the OpenAI Responses API and web search, streamed to the browser section by section over Redis pub/sub and Server-Sent Events
  • Designed an AI engine abstraction over OpenAI, Gemini and DeepSeek, allowing AI providers to be switched without changing any business logic
  • Implemented background processing with Celery and Celery Beat across dedicated queues for scanning, research, scheduled price refreshes and weekly digest emails
  • Implemented per-scan cost tracking, logging every paid AI, scraping and storage call, alongside multi-level caching of parse results, embeddings and reports to keep the average scan cost under 8 cents
  • Implemented authentication with email one-time codes, Google sign-in and anonymous guest sessions using JWT access and refresh tokens
  • Implemented rate limiting with an atomic Redis Lua token bucket shared across all API workers, along with strict CSP, HSTS and CORS security headers
  • Scaled the database layer with PgBouncer transaction pooling and role-level query timeouts to support a growing number of Celery workers
  • Deployed and setup CI/CD pipelines for the frontend, backend, workers and supporting services using Docker Compose on a VPS
  • Integrated with AWS S3 for product image storage and SES for email sending
John Olatubosun