Carplow
Watches Facebook Marketplace for each saved search, grades every listing with Claude against market value, and emails the grades you pick. Live for a small group of friends: Next.js on Vercel, AWS CDK back end.

Problem
Finding a fairly priced used car on a marketplace means refreshing searches, remembering what you saw yesterday, and doing mental math on mileage and condition for every listing. Good cars go in hours.
The marketplaces offer saved searches but no judgment: no sense of whether a price is fair for the mileage, whether a listing is really a parts car, or whether it looks like a scam.
Approach
- 01
Define a watch profile (make, model, years, radius, budget) and collect matching listings on a schedule with Apify, so the system does the refreshing.
- 02
Grade every listing with Claude against market value, adjusted for mileage and condition, and flag car-versus-parts, toys and scam signals. The grade is explained in plain language, not just a score. The model provider is a setting: Amazon Bedrock or the Anthropic API.
- 03
Alert on what matters: new listings that grade well and price drops on listings already being watched, by email through SES.
- 04
Keep the infrastructure small and reproducible: everything on AWS is defined in CDK, and the dashboard is a Next.js app on Vercel reading from DynamoDB.
Architecture
Apify collects listings on each search's schedule; a Lambda filters them, sends each new one to Claude for grading and saves the result in DynamoDB; SES sends alerts; the Next.js dashboard on Vercel reads the same table. All AWS resources are defined with CDK.
Same engine for motorcycles: motoplow.com
Built with
- Next.js
- Vercel
- AWS CDK
- DynamoDB
- Lambda
- Amazon SES
- Claude (Bedrock or Anthropic API)
- Apify
Outcome
Live for a small group of friends. Each search sets its own schedule (from manual to monthly) and which grades trigger an email; every run has a hard dollar cap.
Being tuned on real listings: logged-out Marketplace results are thin, so search quality and grading rules are the current focus.
The same engine now runs Motoplow at motoplow.com, the motorcycle version: watch profiles, grading and alerts carried over, with the rules tuned for bikes.
Decisions
CDK for all AWS resources over console setup
because the whole stack can be torn down and rebuilt in minutes, and the diff is reviewable.
A grade with an explanation over a score alone
because a number nobody trusts gets ignored; a sentence that says why gets acted on.
Pueblo Unido
A listings site and an AI agent that answers buyers in English and Spanish, qualifies leads, books viewings and hands off to Diana, the agent, when a person adds value. Live for a working brokerage.