Radio and PodcastRadio and PodcastLive Radio & Podcasts
Custom Renderers for Svelte with Paolo Ricciuti artwork
Technology

Custom Renderers for Svelte with Paolo Ricciuti

Svelte Radio by Kevin Åberg Kultalahti

Dec 11, 202560:59Technology

In this episode of Svelte Radio, we welcome Jeppe as a new permanent host and sit down with Paolo Ricciuti, Svelte maintainer and Senior Software Developer at Mainmatter, to dive deep into Svelte custom renderers. Paolo...

About This Episode

Custom Renderers for Svelte with Paolo Ricciuti is an episode from Svelte Radio by Kevin Åberg Kultalahti. In this episode of Svelte Radio, we welcome Jeppe as a new permanent host and sit down with Paolo Ricciuti, Svelte maintainer and Sen...

Podcast

This episode belongs to Svelte Radio.

Listen Online

Use the player on this page to stream the episode online.

Episode Details

Published Dec 11, 2025, 60:59 long, audio available.

Questions About This Episode

What is Custom Renderers for Svelte with Paolo Ricciuti about?

In this episode of Svelte Radio, we welcome Jeppe as a new permanent host and sit down with Paolo Ricciuti, Svelte maintainer and Senior Software Developer at Mainmatter, to dive deep into Svelte custom renderers. Paolo walks us through how custom renderers work (using React's approach with React DOM, Ink, and React Native as context), explains the technical challenges of bringing this capability to Svelte 5—including the template element trick, CSP issues, and runtime modifications—and shares his proof-of-concept work enabling Svelte to render to non-DOM targets like terminals and native mobile apps via Lynx.js. The discussion touches on potential use cases like Threlte for 3D graphics, the importance of this feature for Svelte adoption, and wraps up with picks including Screen Studio, TMCP, and Advent of Svelte. Guest Paolo Ricciuti — Svelte maintainer and ambassador, Senior Software Developer at Mainmatter New Host Jeppe joins as a permanent co-host! Topics Discussed Custom Renderers Overview Svelte Custom Renderers website What custom renderers are and why they matter How React separates React (the diffing library) from React DOM (the renderer) Examples of React custom renderers: Ink — React for terminal/CLI applications React Native — React for iOS/Android native apps Remotion — React for programmatic video creation React PDF renderer for generating documents Svelte's Technical Approach How Svelte 5 uses the <template> element and innerHTML for fast rendering The CSP (Content Security Policy) challenges with innerHTML Paolo's compiler option contribution to enable programmatic element creation The custom renderer API: defining operations like createElement, setText, setAttribute, appendChild, etc. Separating the Svelte runtime from DOM-specific code Lynx.js Integration Lynx.js — ByteDance's cross-platform framework (powers parts of TikTok) Why Lynx was the catalyst for custom renderer work CSS support in Lynx including Flexbox, Grid, and even Tailwind The difference between Lynx's element approach vs React Native's component imports Related Projects & Discussions Threlte — Three.js for Svelte (created by Grisha) React Three Fiber — Three.js React renderer Svelte Native — Existing (but limited) Svelte native solution LiveView Native (Elixir/Phoenix) as a comparison for multi-target templating Discussion with Grisha about mixing renderers in the same component Funding & Open Source Mainmatter's sponsorship of Paolo's custom renderer work First external sponsor for this initiative Discussion about using Svelte Open Collective funds for this feature Why custom renderers matter for Svelte adoption in enterprise Paolo's Recent Contributions to Svelte onChange callback for $state (PR in progress) from action utility CSP-friendly compiler option (foundational for custom renderers) Picks Screen Studio — screen.studio — Mac screen recording app with automatic zoom animations (Kevin's pick, used for Advent of Svelte recordings) TMCP — github.com/paoloricciuti/tmcp — Paolo's TypeScript MCP (Model Context Protocol) framework, praised for being much better than the official SDK (Jeppe's pick) Advent of Svelte — svelte.dev/blog/advent-of-svelte — 24 days of Svelte features and improvements (Brittany's pick) Links Svelte SvelteKit Mainmatter — Paolo's employer, specializing in Svelte and Rust consulting Ink (React CLI) React Native Remotion Lynx.js Threlte React Three Fiber Screen Studio TMCP Advent of Svelte Follow Paolo Ricciuti: GitHub | Bluesky Svelte Radio: svelteradio.com

Where can I listen to Custom Renderers for Svelte with Paolo Ricciuti?

You can listen to Custom Renderers for Svelte with Paolo Ricciuti online on Radio and Podcast. Open the player on this page to stream the available audio.

Which podcast is Custom Renderers for Svelte with Paolo Ricciuti from?

Custom Renderers for Svelte with Paolo Ricciuti is an episode from Svelte Radio by Kevin Åberg Kultalahti.

How long is this episode?

This episode is 60:59 long.

When was this episode published?

This episode was published on Dec 11, 2025.

Can I save Custom Renderers for Svelte with Paolo Ricciuti for later?

Yes. Use the heart button on the episode page to add it to your favorite episodes list.

Are there related episodes from Svelte Radio?

Yes. This page shows related episodes from Svelte Radio when more episodes are available from the podcast feed.

Quick Answers About This Episode

Where can I listen to Custom Renderers for Svelte with Paolo Ricciuti?

You can listen to Custom Renderers for Svelte with Paolo Ricciuti on this page when the episode audio is available from the podcast feed.

Which podcast is this episode from?

Custom Renderers for Svelte with Paolo Ricciuti is from Svelte Radio by Kevin Åberg Kultalahti.

What are the episode details?

Published Dec 11, 2025 and 60:59 long