Burak Unlu
← Home

MARTI Program Calendar

A community program calendar driven live by a Google Sheet the organizers edit.

Solo build · 2026 – present · Maintained

Next.js · TypeScript · ISR · Google Sheets · Vercel

Organizers edit a spreadsheet and the live site follows, with no deploy

A program calendar I built and maintain for MARTI, the Maryland nonprofit where I mentor. The point of it is that the organizers are not developers. A Google Sheet is the single source of truth, read as CSV and revalidated every half hour, so a sheet edit reaches the live site without a deploy. Most of the real work is in the parser.

Highlights

  • A Google Sheet as the single source of truth, replacing hardcoded event data.
  • Revalidation on a short interval, so a sheet edit reaches production without a deploy.
  • The parser reads bilingual Turkish and English month blocks.
  • Repeated events merge into multi-day spans, including across a month boundary.
  • Filter tracks come from the sheet's own column headers instead of keyword guesses.
  • The year, which the sheet never records, is inferred by matching weekday columns against candidate years.