

Built a specialized data aggregation platform designed to scrape and organize promotion data from a single mall portal. The system replaces manual browsing of mall websites with a typed REST API and a clean, searchable user interface, allowing users to find offers by brand or category instantly.
Mall promotion portals are often designed for browsing, not for data consumption. They suffer from:
Developed a complete data pipeline from ingestion to presentation:
1. Web Scraping Layer: Implemented a robust scraper using Node.js and TypeScript that targets the mall's promotion portal, handling dynamic content and pagination.
2. Structured Storage: Designed a PostgreSQL schema to store offer details, brand metadata, and validity dates, ensuring data integrity and fast query and performance.
3. Typed REST API: Exposed the data through a strictly typed API, providing endpoints for searching, filtering by brand, and paginated results.
4. Searchable UI: Built a frontend with React and Next.js that allows users to filter promotions in real-time, with brand-grouped views for better discoverability.