From inspiration to acceleration: learning and building on Code for America's years of product experience
Ben Sheldon here. The following is a written version of a talk that I proposed for Code for America’s 2025 Summit. I wanted to shine a spotlight on the many great resources available for designing and building benefits applications like our own Frontdoor Benefits app. Here’s the abstract:
What if you could spin up a new digital assister, like GetCalFresh, from scratch – in just a few weeks? Nearly all the unique resources you’ll need are publicly available in Code for America’s archives. You’ll be shown where to look.
Former CfA Director of Engineering Operations Ben Sheldon will walk you through the publicly-available resources he used to bootstrap an entirely new, simplified, user-friendly benefits application from scratch [that’s what we did at Frontdoor Benefits too!].
This lightning talk will provide a plethora of bookmarks and off-the-shelf resources. We’ll show you how to use publicly-available demo software, open-source prototypes, and accessible design systems to inform, inspire and accelerate development efforts in your county or state, rapidly and at scale.
About me
My name’s Ben Sheldon. I was a 2012 CfA (Code for America) fellow, and joined CfA staff from 2017 to 2022 where I worked on early GetCalFresh as a Senior Software Engineer, was an Engineering Manager across many projects, and finally rose to Director of Engineering Operations.
I recently cofounded Frontdoor Benefits, where we build digital tools that make it easy for low-income Americans to access the public benefits they deserve. We’re deeply inspired by Code for America. At Frontdoor Benefits we were able to quickly design and build a simplified digital intake application for SNAP (food stamps), with a small team, in just a few months with the help of these resources. I’m really proud of it.
I wanted to use this space to specifically share how I access and use the resources Code for America generously makes available. These have informed and accelerated my efforts outside of Code for America and I imagine they can do the same for folks like you who are building in the area of digital service delivery.
Let’s go!
Look for the Demo and “Flow Explorer”
Most of Code for America’s services have a “Demo” version of their website where you can submit pretend information without the risk of it actually being submitted and processed. These demo sites are a reflection of the belief that everyone involved in a project should be concretely familiar with the service being delivered; being able to run through it yourself is a good start.
Below are some links to the demo versions of services that Code for America currently operates, or continue to be historically maintained. Code for America probably spends about $1,000 per year to keep them all online (~$20/app/month on Heroku) so a huge thank you to them for that:
GetCalFresh: demo.getcalfresh.org
Michigan Benefits: demo.michiganbenefits.org, also special because it has some explanatory overlays.
Minnesota Benefits: demo.mnbenefits.org
GetYourRefund: demo.getyourrefund.org
ClearMyRecord (not technically a demo, but preserved): www.clearmyrecord.org
As you can tell from the URLs the pattern is to add the subdomain “demo.” into any Code for America site and see if you can find the demo.
A cool feature of many of these sites, is the Flow Explorer that makes it easy to casually navigate and dip into a long sequence of form flows. Look for a link in the demos’ footers. The first Flow Explorer was invented by my colleague Travis Grathwell for GetCalFresh, and it was a pattern copied to other projects.
Visit the GitHub repository
Nearly all of Code for America’s projects are available on GitHub under the MIT license. GetCalFresh is the exception as it has not (yet!) been open sourced.1
As a software engineer, I don’t believe that there is any significant value in any codebase itself—the value comes from ongoing operations and building relationships with real users—but you might have specific questions about structure or implementation (“how did they do that?”) that can be answered most simply by reading the code or even running it locally and poking at it.
During my years at Code for America, and in my role as Director of Engineering Operations, we tried to build projects using similar tools and techniques. Most of the projects during my tenure were Ruby on Rails based:
GetYourRefund: https://github.com/codeforamerica/vita-min
DRAI (Disaster Relief Aid for Immigrants): https://github.com/codeforamerica/drai
Michigan Benefits: https://github.com/codeforamerica/michigan-benefits
Pandemic EBT: https://github.com/codeforamerica/pandemic-ebt-ca and https://github.com/codeforamerica/pandemic-ebt-mn
Clientcomm: https://github.com/codeforamerica/clientcomm-rails (There’s also a nice FAQ repository)
LA’Message: https://github.com/codeforamerica/la_message
Near the end of my tenure, Code for America was experimenting with an internally developed Java Spring Boot based form builder called Form Flow: https://github.com/codeforamerica/form-flow
Explore the design system
Code for America’s design system is called Honeycrisp. It was based on the design system Daniella DeVera and Norris Hung created for GetCalFresh with an emphasis on large readable text, high visibility and clear affordances, and an approachable natural-toned color scheme. The design system has lots of examples of usable and accessible form and content components.
There are two versions of the Honeycrisp design system:
The original, a Rails Engine of component partials, with Sass and Javascript: https://github.com/codeforamerica/honeycrisp-gem
The update, a custom theme built on top of the US Web Design System with Figma resources: https://github.com/codeforamerica/uswds
If you visit the GitHub pages, you’ll find links to designer-friendly websites and resources too. Even if you don’t adopt Honeycrisp as a whole there is a lot of really good UI patterns and components to poke and pull from.
Note: Honeycrisp is a fantastic starting place for building client-facing forms, but it’s not the best for administrative or expert system interfaces. There is a variant called Honeycrisp Compact that produces a denser UI.
Read the research
Code for America has performed and published a ton of amazing research about designing and delivering digital services that work The trick is finding it: I really wish there was a clean entry point to everything that’s been learned and done over the years. Until then, google “Code for America [your topic]” and you’ll find good stuff. Here’s some things that I’ve personally bookmarked and return to:
Benefits Enrollment Field Guide, which has screenshots of every US State’s online benefits application
Ask the staff (and alums)
Simply find someone on the CfA Staff Page, search for them on LinkedIn, and message them.2 Fortunately everyone has been really friendly when I’ve come to them with questions.
There’s an immense body of experience that current and former Code for America staff (like me!) have, and we’re happy to share! Please reach out and a huge thank you to everyone who has contributed to these resources.
GetCalFresh was originally closed-source because it was started at a time when Code for America was primarily building software libraries to be installed and run by others. GetCalFresh was a unique experiment, at that time, to try directly delivering a service and the code was not made available to reinforce that strategy shift. Given that GetCalFresh will be sunset at the end of 2025, I do hope the code will be released someday soon. I’m curious to see the code I wrote once again, and eager to learn how my colleagues have expanded and improved upon it in the years since.
Code for America discontinued its community Slack and Discourse forum a few years ago.