Working on a simple migration API for editable.website. Because docs are stored as JSON-serialized subgraphs, you want a way to easily manipulate that data.
Michael Aufreiter
@michaelaufreiter.com
On a mission to make the internet editable. Building https://editable.website and https://svedit.dev.
Talk proposal submitted. Can't wait to meet all the Sveltians in person.
Svelte Summit tickets are coming in the next few days 🎟️ Join the launch list and we’ll email you a discount code when they go live. See you in Ljubljana on November 19–20. → sveltesummit.com/ticket-updates
SvelteKit 3 migration guide is shaping up... Y'all know what that means? 🔥 github.com/sveltejs/kit...
Simon H (@dummdidumm_) on X
@wiesson Here's an early draft of the migration guide https://t.co/uatQp5Z1oI
x.com
Build your own page builder. That's what editable.website enables you to do. In many cases you'd just tailor typography, colors, and layout, but you can literally change anything in code, and own it. Technical Preview is around the corner. Join: docs.google.com/forms/d/e/1F...
Svedit is Editing for Svelte. v0.13.0 brings a polished new UX, much better mobile editing, and beautiful new icons (thx @johannesmutter.bsky.social). Also, schema-inferred types and autocomplete, plus plenty of fixes and stability improvements. Demo at svedit.dev
Svelte people: What is your preferred Node (not Bun/Deno) package manager? (help me decide which one to pick for the editable.website starter to make most people happy)
Just managed setup a script that allows you to deploy your editable.website to a fresh Ubuntu server (e.g. DigitalOcean droplet) in a single command.
We already had types in svedit.dev (via JSDoc) but now made the switch to TypeScript eventually. So in Svedit 0.13.0, you will get property auto completion for node properties, that are derived from your document schema.
Spent some time around tooling for backup and restore of editable.website data. You'll be able to safely pull and push Editable's data folder from local to remote and vice versa. Optionally, you can configure your server for automatic backups to S3 using Litestream.
Ugh. Several hours into scratching my head why deployments broke to find out the cause was a @sveltejs/adapter-node regression. github.com/sveltejs/kit... Anyways, good moment to remind myself how many hours Svelte has saved me over the years. 😊 Relieved I found the issue.
fix: avoid circular dependency by teemingc · Pull Request #16115 · sveltejs/kit
closes #16092 This PR tries to keep the benefits of #16069 while ensuring the Node adapter handler code and the user's server build output are in separate chunks. Doing so avoids the circular d...
github.com
svedit.dev v0.12.0 is insanely fast (5-1000x gains). Thx @johannesmutter.bsky.social! And you can now attach marks and annotations not only to text, but also node arrays. Marks are exclusive and render as a DOM elements (e.g. <strong>) while annotations (e.g. a comment) can stack as overlays.
Some people not fully consumed by the all AI buzz, signing up for the real revolution! 😁
Absolutely! Filling out now
Be among the first to build and deploy an editable.website with @svelte.dev. Technical Preview members will be notified a few weeks ahead of public launch, and I will be available via email to help with issues and answer questions. Grab your your slot.
Almost 3 years since editable.website won 2nd place at @sveltesociety.dev SvelteHack. Since then, I’ve been busy turning this from a prototype into something solid. A way to build CMS-free, in-place editable websites using only Svelte. This is v2. 🥳
Add "more crisp" to your projects and "less features".
After svedit.dev, ProseMirror successor wordgard.net fully relies on input events. New era without DOM diffing! Wordgard also renders selections and carets on its own now, avoiding browser glitches. Here I still hope that this is temporary and browsers catch up. marijnhaverbeke.nl/blog/wordgar...
The last remaining big puzzle piece. In the next version of Svedit, you'll be able to toggle annotations on node_arrays, not just text. In Editable, this enables you to group blocks together to sections, without introducing additional hierarchy, or hacky spacer blocks.
Whops. I released but never announced Svedit 0.11.0. It introduces explicit text types, non-destructive type switching of compatible types, and adds infrastructure that helps with implementing things like code blocks (auto-indent, ENTER is considered a newline etc.)
Call me old fashioned, but I'll never buy that complexity doesn't matter anymore, because "the machines" are now taking care of it. If machines can't help us simplify, but merely encourage us to brute force our way through complexity, I can't see this being sustainable?
Svedit (github.com/michael/sved...) by @michaelaufreiter.com and Plim (github.com/darylcecile/...) by @daryl.wtf are some really cool examples of the art of block-based tree editors for rich text and other content where you can control the render path. Worth a look if you're hacking around.
GitHub - michael/svedit: A tiny library for building editable websites in Svelte
A tiny library for building editable websites in Svelte - michael/svedit
github.com
Confession: Spent 1000s of hours wrestling with contenteditable, yet never touched the new EditContext API. Until today. (With the help of Fable.) 400LOC demo for IME composition. Uses CSS custom highlight to underline the composition while in progress. michael.github.io/edit-context...
Working on a spec + implementation of a Common Content Model, aiming to cover 80%+ of content structures most websites need. Spoiler: It's not Markdown. ;)
What the internet needs more of (again) is deliberately crafted pages, where with great care, someone arranged each bit of information.
First apps built on svedit.dev are launching in production this summer. Hence, lots of hours went into the latest 0.10.0 release. Focus was on bugfixes, performance and dev ergonomics. Big thanks to @johannesmutter.bsky.social for the help!
Common mistake in software development: To see patterns where there's nuance. That said: Generalization and composition via patterns is great, but only if the patterns are actual patterns. :) Be wary of "almost-patterns."
It’s been great fun to talk with @katielangerman.com and anthonyhobday.com about my very favorite topic “text editing” :) Thanks for having me! podcasts.apple.com/us/podcast/c...
Complementary
Design Podcast · A podcast about the principles and practices of interface design.
podcasts.apple.com
I want everything on every page of my website to be served by me - not a 3rd party. That YouTube video? I can turn it into an animated thumbnail, and add a “Watch on YouTube ↗” link that opens in a new tab. Self-contained & cookiebannerless. 🤟
Aiming to lock-in theming of editing colors that complement the theming of apps/websites that use Svedit in v0.10.0... Pls join the discussion if you have opinions. :) github.com/michael/sved...
What if (now more than ever) you could do everything, but you still decide to do that one thing, and do it really well?