Projects
web
MaZone
Next.jsFastAPIPlanetScalePythonTailwind CSSNginx
5+
Platforms
<200ms
Search Speed
15min
Refresh
FullStack
Role
The Challenge
Users needed a way to compare prices across Jordanian e-commerce platforms in real-time. The challenge was building fast scrapers, a responsive UI, and handling inconsistent product data.
The Approach
Built the frontend with Next.js for SSR and SEO. FastAPI backend for high-performance API endpoints. Custom scrapers with error handling and retry logic. PlanetScale (MySQL) with full-text search for product matching. Nginx reverse proxy and Tailwind CSS for the UI.
Results
Tracked prices across 5+ platforms with 15-minute refresh intervals. Sub-200ms search response times. SEO-optimized pages ranking for product comparison queries.
Key Learnings
Web scraping is fragile — invest in monitoring and alerting. FastAPI's async performance was excellent for concurrent scraping. SSR was essential for SEO in this use case.