Building Community Tech
Three recent community tech builds, lessons from vibe coding, and rediscovering the joy of building
Exactly twenty years ago, I was a college sophomore trying to decide what to major in. Most nights, you could find me in the basement café of Blair Hall, hunched over my Fujitsu Lifebook, deep in my latest Computer Science assignment.
As the café emptied out around midnight, I’d forge on alone, coding, debugging, making incremental progress each hour. Around 4 a.m., I’d finally head upstairs to sleep a few hours before class (don’t worry, I’d make up another four in the afternoon). I’d lose track of time in that all-consuming flow of building and fixing and figuring things out — and that’s how I knew: Computer Science was it for me.
Over the last fifteen years, I’ve built my career in early-stage startups, and I’ve made some pretty cool software with great people. But it’s only in the last few months that I’ve recaptured that same exhilarating, holed-up, all-consuming joy of building.
But so much has changed. Instead of working on assigned problems (“fill in this function to implement the algorithm”), I get to build whatever I want. Instead of the insecurity of being new to coding, I have two decades of experience building and leading engineering teams, not to mention life experience.
But since Baby K started preschool full-time in August, I’ve rediscovered the joy of building, a part of myself I hadn’t given much space to in years.
With a little time, curiosity, and help from AI coding tools (a.k.a. my friend Claude), I’ve found myself drawn to building community tech — small, useful tools for the people around me.
My last post was about what if hard work felt easier, about leaning into the things that feel joyful and effortless, yet you’re actually learning a ton while letting yourself follow creative and curious impulses. It feels fitting to follow up with personal examples of what that’s looked like for me.
So here’s a little show-and-tell of what I’ve been working on these past few months.
🪴 Community Library
(built in ~2 weeks with Next.js, React, TypeScript, Tailwind CSS, Prisma (PostgreSQL), NextAuth with Google OAuth for authentication, Resend for email notifications, AWS S3 for photo storage, and deployed on Vercel.)
This was the second project I vibe-coded into existence (the first project was TJ Snackbox), but the first one that had some substance.
Community Library is a shared lending library for neighborhoods, a way for people to share household items, camping gear, kids’ stuff, the things that sit in closets 90% of the year.
This site was an upgrade from the Lending Library Spreadsheet I created earlier this year (and wrote about here), and I learned so much about building with Claude and Cursor. I really leaned into using AI, waiting for it to hit a breaking point. Claude planned and executed on building out an MVP app, Google OAuth integration, email sending, photo uploads, caching, performance improvements, and more.
I kept waiting for the whole thing to fall apart, but for the most part it held together. I would tell it what I wanted it to implement or change, and it would execute on it. For a low-stakes site used by a handful of people at any given time, that doesn’t require much ongoing maintenance, it was a perfect experiment in pushing the limits of vibe coding.
The beauty of a community library is it provides tremendous value once people have added items, even with low activity — I love knowing that if I need camping supplies, extra folding tables, or outdoor gear, they are all just a request away.
Feel free to poke around in this test community. If you have a community you’re a part of and would like to set up a Community Library, just let me know and I’ll create one and set you as the admin!
🍎 FreeFoodResources.com
(built in 1 day with Next.js, React,, TypeScript, Tailwind CSS, Neon (PostgreSQL), and OpenAI for AI-powered search)
This one came together shockingly fast just last week. I was putting away groceries while chatting with ChatGPT in voice mode to help define an initial MVP, and within a few hours I had a working prototype that I shipped the next morning.
This project was inspired by a desire to do something to help with the paused SNAP benefits nationwide (other than donating cash to families who didn’t receive their benefits). I kept seeing people share screenshots or bulleted lists on Instagram of local food resources, including this creative state-by-state resource reel. It all felt so ad-hoc that I thought there must be a better way for people to get a comprehensive list of known long-standing organizations as well as newer resources such as restaurants offering free meals.
Free Food Resources is a zip code search tool that helps people find free food resources — food pantries, community fridges, and meal programs.
To get around the empty page problem, I implemented AI-powered web search so the first time someone searches a zip code, it uses OpenAI’s gpt-4o-mini-search-preview model to find and save the results. That first search in each zip code takes over 10 seconds, but any subsequent searches are very fast. Additionally, users can also add more resources, so the database grows organically.
This was a joy to build and get out there.
Lessons learned: If you build anything requiring actual web search, make sure you use a model that is web-search-enabled. Otherwise, it will return results that look completely like real results, but the address or phone number or even the name of the place itself will be completely not real and hallucinated.
Also, Claude got stuck trying to parse an OpenAI API response that was not valid JSON. It kept trying to replace invalid characters one-by-one and getting stuck, yet still continuing down this unsuccessful and brute force route. This went on for quite a while until I redirected it to look for a library that comprehensively sanitizes JSON. While AI is incredibly impressive in some ways, it also can be extremely unimpressive in other ways, and sometimes you need to give it a little nudge or a not-so-gentle shove.
🛒 SNAP Matching Facebook Group Tooling
(built in a few hours with Node.js serverless backend, Facebook Graph API webhooks, Google Sheets API, deployed on Vercel)
This one’s more behind the scenes — internal tooling to help Facebook group admins match sponsors with families needing grocery assistance.
A few days ago, I reached out to an admin on the group. I had donated some funds to a family who hadn’t received their SNAP benefits, and reached out to say, hey this process seems super tedious, are there any tech tools that could help?
The process had been very manual and tedious: spreadsheets, Messenger chats, comments, DMs, physical notebook records.
I built some lightweight tooling to sync information between post comments and a central spreadsheet with Requests and Sponsors, so admins can track who’s been matched and who still needs help. I also set them up for automated DMs with benefits verification info so that people could be verified before being matched with a sponsor.
Some of it was code, but some of it was just connecting existing tools. But it felt really good to help people get financial assistance more smoothly and make the admins’ lives easier.
In an industry where there’s been a huge emphasis on scalability, exponential growth, and maintainable software on growing teams, building community tech by myself — even for just two admins for a FB group — has felt very natural and joyful. I recently joined a Show & Tell group zoom for Relational Tech Project to share my first two projects and hear about other similar projects people are building — for their carpool group, for neighborhood events — and as much criticism as AI gets, it’s enabling small tech in a way that hasn’t been possible before.
Every project I’ve taken on has felt small enough to not be too daunting, and the more I build, the more confident I feel that I can just figure it out. What feels very doable now feels so different than just six months ago, when I wrote about my first vibe coding experience of TJ Snack Box.
If you’ve been wanting to create, to explore, to build, and have felt held back in the past because you’re not an engineer, or setting up a development environment for personal projects feels like too much of a barrier, I encourage you to try it out now.
Pick up a tool — if you’re not technical, Loveable is a good place to start; if you’re technical, Claude Code — and start small.
It’s an exciting time to be a builder.
What if hard work felt easier?
Today is the last day to get the early bird pricing ($40) on Creating Space, my self-paced journaling course with Buster Benson. It’s a lightly structured way to slow down and reconnect with what matters most — through thoughtful journaling prompts and reflections that help you find clarity and direction at your own pace. Join us for the fall cohort!
My Buy Nothing baby changed my relationship with consumption
When I was pregnant with Baby K (now almost 10 months old), I was already an active member of our local Buy Nothing community, so I started accumulating things I knew we’d need — baby clothes, a bathtub, changing table, wipe dispensers, etc. By the time Baby K arrived, we had collected almost everything we needed through family hand-me-downs and from th…
My First Vibe Coding Project: The Trader Joe’s Snack Box Builder
As I’ve been using this season of exploration to write, coach, and experiment, product building has always lingered in the back of my mind.








