Community work

Case study

A weekly cleanup that can publish its own events

Astoria Trash Club needed a website its organizers could keep current without ever opening a code editor. We built the site and the pipeline behind it, then wrote it all down so someone else could take it over.

Organization
Astoria Trash Club
What we did
Website, events pipeline, photography
Cost
Pro bono
Live at
astoriatrashclub.org

What it is

Astoria Trash Club started in September 2025 with a simple idea: clean up the neighborhood and meet more of your neighbors while doing it. Cleanups are weekly, free, and open to anyone who turns up — usually starting near a local business worth supporting. Buying something is always optional.

By the time we got involved, the club had momentum, a growing WhatsApp group, and no website. Everything lived in group chats and Instagram stories, which works right up until someone asks a simple question like "when is the next one?"

  • Next.js
  • Airtable
  • Google Calendar
  • Vercel

The actual problem

The obvious ask was "build us a website." The real problem was narrower and more interesting: the organizers needed to publish an event without needing a developer, and without learning anything new.

That rules out most of the tempting answers. A CMS is another system to log into. Hard-coding dates means every cleanup is a code change and a deploy. Neither survives contact with volunteers who already give up their Saturday mornings.

Top tip

The test for a volunteer-run site is not how it looks on launch day. It is whether someone who was not in the original conversation can still update it eight months later.

How it works

Airtable is the source of truth. Organizers add a cleanup there — title, start and end time, location — in a spreadsheet-shaped interface they already understood. Two Airtable automations do the rest:

  1. Event creation fires once a title and times exist, creates the matching Google Calendar event, and writes the calendar's event ID back into the Airtable row.
  2. Event updates fires on later edits, and because the row now carries that calendar ID, it updates the existing event instead of creating a duplicate.

The public site reads the Google Calendar, so upcoming and past cleanups appear without anyone touching the codebase. The site itself is Next.js on Vercel, deploying automatically from GitHub whenever we push.

That write-the-ID-back step is the whole trick. It is what makes the second automation an update rather than a fresh insert, and it is the difference between a calendar people trust and one with three copies of the same cleanup on it.

Getting the location right

Cleanups meet outdoors — a corner, a park entrance, the end of a block — not at a street address with a door. Map pins that are "close enough" send people wandering around looking for a group of strangers with trash bags. Getting the meetup point to resolve correctly for navigation mattered more than anything else on the page.

Written to be handed off

The least glamorous part of this project is the part most likely to keep it alive: documentation. The setup is written down — how the site is hosted, how the automations are wired, which accounts own what — so that a future contributor, or a different volunteer entirely, can take it over without reverse-engineering anything.

This matters because the failure mode for volunteer projects is not bad code. It is the one person who understood the system getting busy.

What's next

The roadmap is the organizers', not ours. The things they want most:

  • RSVPs, so hosts have some idea of numbers
  • A photo gallery of past cleanups — visible proof for donors and new members
  • Non-cleanup events, like yoga or training sessions in the park
  • A map of the local businesses the club has worked with
  • Community-submitted trash hotspots

Why we did it for free

We live here. The club is run by people giving up their weekends to make the neighborhood better, and the gap between that and a working website was a few evenings of our time. That is the whole calculation.

Work with us

Need a website built, or one you already have kept alive?

We take websites end to end — design, build, hosting, and the ongoing updates most people would rather not think about. One engineer and one designer, so you are never explaining the same thing twice.

Running a volunteer or community organization?

We do that work for free when we have the time — websites, photo and video. Say hello and tell us what you are working on.

Based in Astoria, Queens, NY · shane.richards121@gmail.com