Üni Yemek
One service that gathers cafeteria menus from eight universities
Screenshots & Schematics

Problem & Challenge
University cafeteria menus published across fragmented platforms in incompatible formats: static HTML tables, client-side SPA renders, and unstructured PDF documents.
How It Works
Automated cron jobs crawl institutional cafeteria portals on regular schedules.
Static HTML is parsed with Cheerio, SPAs are evaluated using headless browser instances, and tabular PDFs are processed with Python.
Raw menu entries are parsed into structured schemas with meal slots, calories, and allergens.
Sanitized records are served via an Express REST API with client caching headers.
Students view categorized daily and monthly menus through responsive search and filter tools.
Architecture & Technical Decisions
Node.js, Express REST API, Cheerio HTML parser, Python PDF extraction pipeline, Headless Chromium runtime, JSON-backed datastore, and modern responsive frontend.