From "Ship it" to shipped
Yesterday I opened SignUpBreeze to everyone and turned on payments. It happened during Laracon, which feels right, because Laracon is where the push to finish came from.

I've been building with Laravel since the early days — long enough that it's just how I think about web apps. So this isn't a story about discovering a framework. It's a story about running out of excuses.
Last year I watched Laracon on the livestream. Taylor Otwell closed with a call to action: we have the tools now — Laravel Cloud, the whole ecosystem, everything sitting right there. No excuses left. Then three words: we must ship.
He was right, and I knew it while he was saying it. The hard parts of building a product used to be the parts that had nothing to do with the product. That's not true anymore. Which means what's left standing between an idea and a live app is mostly you.
I had an idea I'd been sitting on and no good reason not to start.
The idea was small. I kept watching volunteers try to sign up for things on their phones — school events, team snack schedules, church cleanups — and the tools all seemed to assume a desktop and a lot of patience. Ads everywhere. An account required just to bring cookies. It seemed like something I could do better, or at least differently.
So I started that week. A year later, here we are.
What's live now
Open signups. No waitlist or invite code. You can create an event at signupbreeze.com and share the link.
Magic-link signups. An attendee taps a link, enters their name, and they're on the list. No account, no password. This took much longer than I expected — "frictionless" is easy to describe and harder to build without quietly creating security problems. I'm still refining it.
The stack, for anyone curious
Laravel, Livewire, Flux UI, Tailwind, Pest for tests, Fortify for auth, Pennant for feature flags, deployed on Laravel Cloud.
None of it is unusual, and that was deliberate. I'm one person. Every hour I didn't spend on infrastructure went into the signup flow, which is the only part of this a volunteer will ever see — which is exactly the point Taylor was making.
Being in the room this year
Watching Laracon on a stream is good. Being there is different in a way I didn't anticipate. The distance between almost ready and live stops looking like a technical problem and starts looking like a decision you've been putting off. Mine had been sitting at almost-ready for a few weeks longer than it needed to.
So I flipped the switches between sessions.
What's next
More organizer tooling, better support for teams, and a steady list of small mobile fixes I keep noticing every time I use it on my own phone. Plenty left to do.
If you run volunteer signups, I'd be glad if you tried it. If something's missing or broken, tell me — I read everything, because right now there's only me to read it.
Years of building with Laravel, and it took someone pointing out I had no excuses left for me to finally ship something of my own.