Elena Torró
Rendering Design Software in the Browser at Penpot
#1about 4 minutes
Moving from SVG to canvas for better performance
Penpot's new rendering engine replaces SVG with a canvas-based approach to solve performance bottlenecks in large, complex design files.
#2about 4 minutes
Optimizing canvas rendering with a tiling system
The new engine uses a custom tiling system with viewport culling and tile caching to efficiently render only what's visible on screen.
#3about 3 minutes
Managing application state with Rust and WebAssembly
State is managed manually outside the DOM by serializing data into a binary format and passing it to a Rust backend via WebAssembly.
#4about 10 minutes
Implementing advanced design features like multiple strokes
Replicating complex features like multiple text strokes requires creative solutions using blend modes and surfaces, as they are not standard in the Skia library.
#5about 10 minutes
Solving text interaction and emoji rendering challenges
The engine tackles difficult text rendering problems like selection and glyph placement, using a consistent font fallback for emojis to avoid cross-platform inconsistencies.
#6about 9 minutes
Building an open source renderer with a new tech stack
The team is learning Rust and WebAssembly together while building the new renderer in the open, documenting their progress publicly for community contribution.
#7about 11 minutes
Scaling collaboration and improving developer tooling
The client-side rendering architecture ensures performance doesn't degrade with more collaborators, and better browser performance tooling would further aid development.
Related jobs
Jobs that call for the skills explored in this talk.
Matching moments
09:04 MIN
Penpot's technical stack and contribution model
Building Collaborative Open Source tools for Developers and Designers - Pablo Ruiz-Muzquiz from Penpot
06:01 MIN
Bringing designers into the open source ecosystem
Building Collaborative Open Source tools for Developers and Designers - Pablo Ruiz-Muzquiz from Penpot
04:09 MIN
Bridging paradigms with declarative design in a tool
Building Collaborative Open Source tools for Developers and Designers - Pablo Ruiz-Muzquiz from Penpot
02:43 MIN
Overcoming the technical challenges of a web-based tool
Fireside Chat with Kris Rasmussen, CTO at Figma
03:26 MIN
Bridging the gap between designers and developers
WeAreDevelopers LIVE - Is Software Ever Truly Accessible?
03:00 MIN
Solving the historic designer and developer collaboration gap
Building Collaborative Open Source tools for Developers and Designers - Pablo Ruiz-Muzquiz from Penpot
12:31 MIN
Discussing modern web development news and trends
WeAreDevelopers LIVE - GraalVM in action, Static Analysis insights and more
02:20 MIN
The technology behind in-browser AI execution
Generative AI power on the web: making web apps smarter with WebGPU and WebNN
Featured Partners
Related Videos
Building Collaborative Open Source tools for Developers and Designers - Pablo Ruiz-Muzquiz from Penpot
Pablo Ruiz-Muzquiz
WeAreDevelopers LIVE - Rendering in the Browser, The State of CSS and Accessibility and more
Chris Heilmann, Daniel Cranney & Elena Torró
Making of paint.js.org—a Web Component-based Productivity PWA
Christian Liebel
New Browser APIs, End of React Create App, Smuggling Data in Emoji and more with Rowdy Rabouw
Chris Heilmann & Daniel Cranney & Rowdy Rabouw
Using all the HTML, Running State of the Browser and "Modern" is Rubbish
Chris Heilmann & Daniel Cranney and David Letorey
The Journey of a Pixel in a React Application
Shem Magnezi
Fireside Chat with Kris Rasmussen, CTO at Figma
Thomas Pamminger & Kris Rasmussen
Breaking Down Silos Between Design and Development
Erica Rider & Stan Carrico
Related Articles
View all articles



From learning to earning
Jobs that call for the skills explored in this talk.

doinstruct Software GmbH
Berlin, Germany
Senior
GIT
JavaScript
TypeScript

ELFIN Engineering and Solutions GmbH
€60-68K
Vue.js
Node.js
TypeScript
Software Architecture
+1


Craftzing
Antwerp, Belgium
Intermediate
GIT
DevOps
Vue.js
Docker
Node.js
+6


Craftzing
Leuven, Belgium
Intermediate
GIT
DevOps
Vue.js
Docker
Node.js
+6

Mindpeak
Intermediate
Linux
WebGL
Docker
TypeScript
Machine Learning

Codext GmbH
Wolpertshausen, Germany
€40K
HTML
Node.js
TypeScript
