Flavio
flaviowaser

Experience

Dribs

First overview

http://178.104.80.19/

7 hours ago

Architecture

6 Local Sites → Python Scrapers → events.json → PostgreSQL → Flask API → Solid.js Frontend

How Far You've Come

Done

  • 6 working scrapers (Urner Wochenblatt, KBU, Musikschule Uri, Schulen Altdorf, Gemeinde Altdorf, Gemeinde Andermatt) — mix of custom HTML parsers and RSS
  • Central orchestrator (scraping/scraping.py) with deduplication by title+date+time
  • 400+ scraped events in events/events.json
  • PostgreSQL schema with events + sources tables, UUID keys, foreign keys
  • Data ingestion pipeline (db/parse_json.py) that upserts sources and inserts events
  • Flask REST API (api/app.py) — GET /api/events?date=YYYY-MM-DD and GET /api/sources, CORS enabled
  • Frontend skeleton (frontend/src/) — Solid.js + Tailwind, with Header and Card components styled
7 hours ago