๐ About the Project
๐ก Inspiration
Haggling on Carousell is a WAR CRIME against your sanity. Lowballers ghosting you, boomers yelling "FIRM PRICE LAH," and sellers who think S$1.2k for a scratched iPhone 12 is "BNIB." We said ENOUGH. Channeling Chris Voss's Never Split the Difference, we birthed cheapskate.aiโthe negotiation bot that haggles harder than your auntie at wet market.
๐ค What it does
cheapskate.ai: Your personal Carousell chaos manager that turns "WAHHH TOO EXPENSIVE LA" into "OK LAH S$XXX can?"
- Search & Snipe: Finds your dream iPhone 15 under S$1k while you Netflix & chill
- Auto-Haggle: Deploys Ackerman model + Voss mind games = sellers crying into their teh tarik
- Mission Control: Tauri dashboard with 3FPS live stream (yes it looks like 240p YouTube but SHH)
- 24/7 Stalker Mode: Watchdog sniffs new message badges like a desperate Tinder user
- Memory Like Elephant: Reads chat history so it NEVER asks "Still selling?" after seller says "SOLD"
๐๏ธ How we built it
- ๐ง The Brain: Playwright puppeteering Chrome + Ollama/Gemini LLMs whispering sweet nothings (lowballs). Chat directly with agent via Gemini API!
- ๐ซ The Heart: Python Bridge Server (aka "Why won't frontend talk to backend HELP")
- ๐จ The Glow-up: React+Tauri with glassmorphism so shiny your eyes water
- ๐ต๏ธ Stealth Mode: JS injection to hide
webdriverfingerprints (we're basically browser spies now)
๐ง Challenges we ran into
- "Flushed" Viewport: Playwright's fixed window size made Carousell layout explode like bad ayam penyet
- Flickering Hell: Live stream looked like Japanese horror film. Fixed with "Atomic Moveโข" file swaps
- Context Amnesia: LLM kept forgetting chat history like your ex. Built Smart Syncโข DOM reader
- Auth Nightmare: Sessions timing out mid-haggle = AUTOMATION DEATH. Saved cookies locally + 2FA token magic
๐ Flexes we're proud of
- 100% Hands-Free: Spots message โ inbox โ haggle โ profit. Your only job: count savings
- Aesthetics: Dashboard so clean Elon Musk would recruit us for Dogecoin
- Voss Magic: Bot drops "Seems like you're firm on price?" and sellers actually BUDGE
๐ What we learned
Browser automation = 90% waiting for loading spinners, 10% copy-pasting selectors. Tauri = web devs finally escape Electron bloat. Patience > code.
๐ฎ Next Level Chaos
- Facebook Marketplace (let the boomers FEEL our power)
- AI voice calling sellers at 2AM ("Bro still awake? S$50 how?")
- Rage detection so bot knows when to ghost angry uncles
Log in or sign up for Devpost to join the conversation.