Sean Oliver (@SeanOliver) header
Sean Oliver (@SeanOliver) profile picture

Growth engineer at @supabase. Making small apps on nights and weekends.

San Francisco, CA
Joined January 2007
Photo by Sean Oliver (@SeanOliver)Photo by Sean Oliver (@SeanOliver)Photo by Sean Oliver (@SeanOliver)Photo by Sean Oliver (@SeanOliver)Photo by Sean Oliver (@SeanOliver)Photo by Sean Oliver (@SeanOliver)Photo by Sean Oliver (@SeanOliver)Photo by Sean Oliver (@SeanOliver)Photo by Sean Oliver (@SeanOliver)Photo by Sean Oliver (@SeanOliver)
✨ Introducing Audioflare ✨ The ultimate open source playground to master @Cloudflare AI Workers. Audioflare transcribes, summarizes, analyzes, and translates 30-second audio clips into 9 languages. #buildinpublic
11
34
3
189
48,854
Sean Oliver retweeted
Big update to the X platform today After 10 years of Twitter/X supporting up to 4 Photos and Videos per post, the limit has been increased to 20! Happy posting
370
1,073
695
4,580
841,676
Sealed now lets friends fix their address by tapping the envelope their card arrives in. Sealed is my address book that friends and family keep current. Each line opens only its own fields. The envelope follows each country's format: a UK post town prints in capitals, as Royal Mail asks. sealed.page
124
This First Wives Club reboot is going to be 🔥
151
seanoliver.dev now has a Travel page for my vacation videos. Five trips so far, from Australia and New Zealand in 2014 to China this year. More are coming as I edit old footage. YouTube's three suggested thumbnails were weak, so we pulled 48 frames from each video with ffmpeg and I picked from those. See them at seanoliver.dev/travel
1
212
InstantDB namespaces become Postgres tables, $users become Auth accounts, and $files go to Storage. Upload your backup and the schema changes come back as SQL migrations you can keep in your repo.
1
5
280
Our TV now shows the front porch live when someone rings the doorbell. Ring has no stream a TV app can play, so ring-mqtt turns the live view into one. PiPup shows it over whatever is on screen. The popup opens as soon as the doorbell rings, and the video starts 4 to 5 seconds later.
1
260
Imagine getting caught having an affair and it’s such a big deal that both the US and China are making official statements about it and your company loses $80B in market cap and the internet is exploding with thousands of AI generated memes created with your GPUs…
118
My trip planner's day view is now drawn to scale. Each stop is a bar, one pixel per minute. Between stops: - Travel: a blue bar, solid when set, striped when estimated. - Spare time: a dotted line. A stop over 3 hours shows only its first 90 and last 30 minutes, so one museum day doesn't fill the screen.
109
I replaced the ad-filled Google TV home on my Hisense TV with Projectivy Launcher. Set it up with Claude Code over ADB, without rooting the TV, and disabled 14 preinstalled apps. Android saves disabled-app state 10 seconds after a change. A plain adb reboot skips the shutdown that saves it sooner, so our reboot script waits 30 seconds.
3
1
485
Sudoclue, my Sudoku app, now has a Home screen that fits without scrolling. It was 1109 px tall on an 844 px phone. Now the daily board fills the leftover height and is about twice as big. One level picker sets the daily and a new puzzle. I also dropped the logo from the bar, since apps don't put it at the top. Play with it yourself at sudoclue.app
1
3
228
My address book app Sealed now lets an AI agent edit contacts. Friends add their own addresses, and I send holiday cards. Edits save immediately, and each one has an Undo. Changing a contact's email or deleting one waits for my approval. Code review kept finding edge cases in bulk edits and an Undo-all button, so I cut both.
5
3
275
My trip planner's Days screen is now the one place to change a day. Hold a stop to reorder it or drop it on another date. Tap a time to slide it. Moving the ferry before lunch took 3 taps and 2 screens. Now it's one drag. Plan mode and Arrange on the map are gone, along with 5,672 lines.
1
130
Dragging ideas in from a tray was the tricky part. The first version faded the tray while you held an idea, but it still covered the stops you were dropping onto, and letting go anywhere added the idea. Now the tray drops to a strip above the tabs, and letting go on the strip puts the idea back.
60
Yesterday, someone on the Oakland subreddit started an appreciation thread for my work on Bay Ballot, and I honestly have to say it made me a little emotional. I didn’t build Bay Ballot to make money, get attention, or sway people one way or another. I just wanted to provide a resource that helps people make decisions aligned with their values—without having to be experts in politics or decipher the inscrutable language in ballot propositions. I had no idea it would be so well received. Getting unsolicited feedback like this really goes a long way toward reassuring me that the work was worth it. It goes without saying, I’m looking forward to maintaining and improving this resource for future elections. Thanks to everyone who took the time to use it, share feedback, and pass it along to friends and family. Feeling very energized for what’s to come! bayballot.com
1
107
Claude helped me move my Tidbyt off Tidbyt's servers and onto my own. It now runs Tronbyt, a community firmware, from my Home Assistant box. Claude also built its first app: a countdown to my next calendar event, plus my top Things task. AI is starting to make personal software possible for everyone, and that's super exciting.
3
1
228
Before building it, Claude rendered three layouts with Pixlet, the Tidbyt's own renderer, so I could compare them animated. I picked the big countdown. It turns amber at 15 minutes and red at 5.
1
98
Backing up the stock firmware failed at every baud rate until Claude read it in 256 KB chunks. The Mac's driver for the Tidbyt's USB serial chip drops bytes on long reads.
58
My trip planner now asks when a stop looks like it's on the wrong day. On my Germany plan, a church in Rothenburg ended up after our train into Munich. The app offered a 199 km, 2 hr 25 min drive to it. Now a gap over 100 km with no train, flight, bus, or ferry between asks "Wrong day or order?"
129