A parent verifies before a kid can post
A child won't be allowed to post a game until their parent has been verified. The panic button can be reached from any screen while playing.
Sports · Community · Mobile
The easy part is getting two strangers to agree to meet in a park; the difficult part is getting them to feel safe while doing so.

Existing apps assume a season, a fixed schedule and a regular team.
Drove: A front door built around one game on Saturday.
The blocker is two strangers agreeing to meet and both feeling comfortable.
Drove: The safety layer shipped in v1 instead of being added later.
Testers always read "Matches" as referring to a dating app.
Drove: Renamed to "Browse" and "Players". The match scores stayed.
This image is currently unavailable
A child won't be allowed to post a game until their parent has been verified. The panic button can be reached from any screen while playing.
Meeting points come from a list I curated, so no one can drop a pin on an address of their own choosing. That one is often the subject of debate; it would be more flexible to let people add their own locations, and I still won't do it.
In version 1 the safety layer was the first thing included, because every product I've seen that added it later ended up with a settings screen no one opened.
The AI carried out the preparation of the RLS policies, the Supabase migrations, the Stripe integration and the OAuth flow, which represents a major part of the project, and it did so quickly. It wasn't clear who was allowed in, who was gatekept, and what a stranger would see about another stranger before agreeing to meet; those cases were the ones I handled manually. Although, one thing an AI security review did pick up on that I otherwise would have missed was a recursive RLS policy which would have led to data being leaked in production.
This image is currently unavailable
A Parent Verifies Before a Kid Can Post
13+ age gate as the first checkpoint
asks a parent to verify before posting
a curated meeting place and a panic button
panic button reachable while playing

People always read "Matches" as referring to a dating service; it's now called "Browse" and "Players". I created a Quick Start wizard which was not wanted, saw testers skip it every time, and eventually removed it. Support for Apple, Outlook and ICS calendars was developed and then removed, since hardly anyone used them and I would have had to maintain three integrations indefinitely for those few who did.
I warmed up the palette, since a trustworthy product that looks like a fintech dashboard comes across as a company, and this one needed to look like a neighbour. The safety states have been part of the same system since v1, rather than appearing later as status chips bolted on the side.

Shipped, including auth, RLS, Stripe, Google OAuth, real-time updates, the minor-approval process and the curated meeting spots — all of which I designed and built. In version 1 the safety layer was the first thing to be included, since all the products I've seen which added it later ended up with a settings screen that no one opened.
"Unmatched in his ability to translate the often vague ideas from clients into beautiful, simple-to-use products."
I built a discovery and booking platform connecting users with vetted herbalists and reliable resources. The vision centered on credibility—helping users find trusted practitioners while avoiding unverified sources and misinformation.
Tell me what you're working on and where it's stuck. Short messages are fine.