← Back
calendars.michaelzizzadoro.com

Subscribe once.
Never miss a game.

One webcal:// link in Apple Calendar gets you every fixture for a team. Schedules come live from ESPN; the calendar refills itself as the season runs.

Open the feeds ↗7 teams · 104 WC matches
barca.icstext/calendar
BEGIN:VEVENT
UID:espn-748519@michaelzizzadoro.com
DTSTART:20260523T190000Z
DTEND:20260523T210000Z
SUMMARY:⚽ Valencia vs Barcelona
LOCATION:Mestalla Stadium, Manises
DESCRIPTION:Spanish LALIGA · ESPN+ · VAL 3 - 1 BAR
END:VEVENT

One real event from the live Barça feed. The whole calendar is just a stack of these.

The feeds on offer

GET /{slug}.ics
FC BarcelonaSoccer
La Liga · Champions League · Copa del Rey
/barca.ics
USMNTSoccer
World Cup · Nations League · Gold Cup
/usmnt.ics
Inter Miami CFSoccer
MLS · Playoffs · Leagues Cup
/inter-miami.ics
Clemson TigersCFB
Regular season · ACC Championship · CFP · Bowls
/clemson-football.ics
Clemson TigersCBB
Regular season · ACC Tournament · March Madness
/clemson-basketball.ics
New York MetsMLB
Spring training · Regular season · Postseason
/mets.ics
Denver BroncosNFL
Preseason · Regular season · Playoffs
/broncos.ics

The page that hands them out

Every team gets a card: a Subscribe button that opens Apple Calendar, and the raw URL to copy. This is the real thing, running.

calendars.michaelzizzadoro.com
The Sports Calendars landing page: a card per team with a Subscribe in Calendar button and the raw feed URL to copy
Bundle

Several teams, one subscription

Tick the teams you follow and the URL stitches their feeds together. The Worker reads each cached feed and merges the VEVENT blocks — no extra calls to ESPN.

/bundle/barca+usmnt+mets.ics
Bundle mode active: three team cards checked, with a sticky bar reading 3 teams selected and a Subscribe to Bundle button

A whole World Cup, sliced any way

Jun 11 – Jul 19, 2026

All 104 matches in one calendar, or pull just your country (48) or one stadium (16). The bracket fills in automatically as knockout games are set.

The FIFA World Cup 2026 section in dark mode: subscribe to all 104 matches, or browse by country (48) and by venue (16)

What happens when you subscribe

Apple Calendar polls the webcal:// URL on the schedule you set (every day works).
The Worker checks its KV cache. A built .ics older than 6 hours triggers a rebuild.
ESPN's public API returns the live schedule — scores, venues, broadcasts, kickoff times.
Back to you as a fresh .ics. Your calendar updates without you touching anything.

No database, no login, no app to install. The whole thing is one Worker file and a KV cache sitting at the edge.

The Sports Calendars page on a phone: stacked team cards with full-width Subscribe and Copy URL buttons

Built to forget about

It runs on Cloudflare's free tier and answers from the nearest edge, so a feed comes back in milliseconds whether you're on a laptop or a phone in a stadium. A smoke test hits every team URL after each deploy, so a broken build fails loudly in about ten seconds.

Cloudflare WorkersWorkers KVESPN APIiCalendar (.ics)WranglerClaude Code
calendars.michaelzizzadoro.com ↗