---
title: "FootyCal: filter by city | James Donnelly"
description: "Adding city filtering so my wife can easily find Swans games in Melbourne."
canonical_url: "https://jamesdonnelly.au/blog/2026-04-19-footycal-city-filter"
markdown_url: "https://jamesdonnelly.au/blog/2026-04-19-footycal-city-filter.md"
last_updated: "2026-04-19T00:00:00.000Z"
---

# FootyCal: filter by city

Adding city filtering so my wife can easily find Swans games in Melbourne.

Published 2026-04-19.

**tldr** [footycal.au](https://footycal.au) now lets you filter any team's fixtures by city. Sydney games in Melbourne, Hawthorn games in Hobart, North games anywhere but Hobart, you get the idea.

I thought this would be a one-and-done project. By design, [footycal.au](https://footycal.au) is a simple, unobtrusive hobby site that just works. But I had a feature request right out of the gate, from the very first person to look at it: my wife.

## A house divided

My wife and her entire family are massive South Melbourne supporters, five generations deep. Their biggest challenge in accepting me into the family was my support for St Kilda, their historical rival. They liked me enough to overlook it.

Whenever they point out their slightly better silverware collection, I retort that *my* team hasn't moved to Sydney and can be reliably found playing at 3:15 at Marvel Stadium every other Sunday.

The request was for a calendar of only the Melbourne-based Sydney Swans games. Which is more complicated than it sounds. That's two stadiums, the MCG and Marvel, for a select handful of away games spread across the season. The Swans typically come down 3 or 4 times a year, and finding those dates is exactly the kind of thing a calendar should do for you.

## How it works

The fix turned out to be small. Each venue in the data already had a name and a timezone, so I added a third field: a city. That sounds trivial, but timezone alone doesn't get you there. GMHBA Stadium is `Australia/Melbourne` but it's in Geelong, and Manuka Oval is `Australia/Sydney` but it's in Canberra. So venues are the source of truth for their city, and a city is a separate concept that maps to one or more venues.

From there, every feed gets a new optional `city` query param. It's comma-separated, so you can cover a region:

```
/team/sydney.ics?city=melbourne              → Swans games in Melbourne
/team/sydney.ics?city=melbourne,geelong      → Swans games in Melbourne or Geelong
/all.ics?city=melbourne                      → Every AFL game in Melbourne
```

Existing URLs are untouched. No default, no migration, nothing breaks if you don't use it. The wizard has a new step to walk you through it.

I won't convert to the Swans, and I can't move them back to South Melbourne. But I can do this. Add a city-filtered feed at [footycal.au](https://footycal.au).

## Sitemap

See the full [site map](/sitemap.md).
