Six sources, one warehouse
iCal feeds, Google Calendar, Zotero, BibTeX/RIS files, local markdown notes, and OpenAlex enrichment - all ingested idempotently into a bronze/silver/gold Postgres layout managed by dbt.
Portfolio capstone - Data Engineering
StudentOps ingests calendar feeds, Zotero, markdown notes, and academic references through a layered Postgres warehouse, then surfaces what is due, what is planned, and what is worth reading - with an AI assistant that refuses to invent citations.
Built with Python, dbt, Prefect, Streamlit, Astro. Deployed on Fly.io and Cloudflare Pages. Costs about AUD 12 a month to run live.
iCal feeds, Google Calendar, Zotero, BibTeX/RIS files, local markdown notes, and OpenAlex enrichment - all ingested idempotently into a bronze/silver/gold Postgres layout managed by dbt.
Reading summariser, Anki flashcard generator, citation suggester. Every DOI the suggester proposes is validated against OpenAlex and CrossRef; unresolved DOIs are dropped silently. No hallucinated references reach the user.
Every flow opens a row in meta.flow_runs. The Pipelines page shows freshness per source, success rate over the last fifty runs, and today's AI spend.