Profile avatar
hamburger.cloud
Father of two children and countless software bugs Currently working on the text editor used in the very core of the @Sanity.io Content Operating System: https://github.com/portabletext/editor.
96 posts 155 followers 101 following
Regular Contributor
Active Commenter

The age of Headless CMS is over. Say hello to the Sanity App SDK, Functions, AI Agents, and more—all part of The Content Operating System. www.sanity.io/spring-relea...

error TS6133: 'someVariable' is declared but its value is never read. That's terrible. Better fail the whole build immediately.

Partial solar eclipse, March 29, as seen from Denmark (through the right glasses)

Found my Wolfenstein 3D floppy

Maybe a 🌶️ take, but I generally don't like this trick. If one of your default/known values changes - e.g., "alert" is renamed to "warning" - your call sites won't break, and subtle, hard-to-discover bugs can be introduced. Any string is allowed, remember?

It's so good. And... psst... guess what's driving the behaviours in and around the code block: www.portabletext.org/concepts/beh...

Looks like last.fm still doesn't offer a way to export your data. So... I guess I might as well revive my 20-year-old account for the second(?) time! Do you have one? www.last.fm/user/christi... (I want to listen to more music again, and maybe this can be a weird sort of motivation.)

My MacBook from 2007. Still boots. And I still hate computers.

It really is a special feeling sitting in your car, listening to a podcast, as you've done so many times before, but this time YOU'RE THE GUEST! Thank you, @simeongriggs.dev, for inviting me on to talk about Portable Text, text editors, Behaviours, Gherkin and state machines and more.

Very soon, you'll be able to hear @simeongriggs.dev and me talk about the Portable Text Editor—the challenges behind the scenes, as well as the cool new APIs we're cooking up.

The Behavior API for @sanity.io's Portable Text Editor will allow you to configure the editor in ways that where previously not possible. Behaviors can be bundled in Plugins to easily turn them on and off. Here's an example of a simple <OneLinePlugin /> that restricts the editor to one block.

Why is the first cup of coffee always an emergency?

Trying to use Copilot for a simple, boring task

So cool that we can finally ship this as the first step towards a more pleasant and modern writing experience in the @sanity.io Studio. For the interested, here's a link to the source code of the markdown behaviours found in the Portable Text Editor repository: github.com/portabletext...

Me releasing I've spent the past 10 years writing JavaScript full-time

Opened up my work laptop after almost two weeks off and this is the first thing that meets me. I guess I left in the middle of a debug session?

I keep toggling bold on and off again

Setting up a WYSIWYG editor in React is new to me—and a real neat UI challenge at the same time. Build this with Tailwind, Typography & Headless UI. That editing pane just has the `prose` class on it. Sick! 👏 @hamburger.cloud this is immense work! www.portabletext.org

So proud of this and can't wait to take it even further.

git: I'm dying me: git checkout -b docs-fix-typo-2

I wish GitHub (git?) was better at showing stacked diffs. Me: Let me carefully and surgically refactor this function in one commit and then rename it in the next commit GitHub: EVERYTHING CHANGED

Two-step username/password forms Can we please stop with that

React v19 *just* dropped and @codey.bsky.social already made sure our Portable Text Editor is up-to-date 💙 github.com/portabletext...