Penpot: A Real Alternative to XD and Figma?

With Adobe putting XD into maintenance mode and no updates since the failed Adobe Figma merger, I’ve been looking for alternatives. I’ve used XD for years and dipped into Figma now and then. I know both, though I was more fluent in XD. That search led me to Penpot, and here’s what I’ve found so far.

Code first approach

Penpot is built with the web in mind. Everything in it is based on real web standards, like CSS and SVG. The layout tools reflect how developers actually work with flex and grid, which makes it easier to design something that will translate cleanly to code. With Figma, the workflow often starts from a design concept and only later gets adapted for development. Penpot flips that by aligning with code from the start. This is why it feels natural if you already know how websites are built, and it makes the handoff process smoother for developers.

Design tokens

One of Penpot’s strongest features is its native support for design tokens, built in partnership with Tokens Studio. Tokens are a way to define values like colours, spacing, borders, and typography once, and then reuse them across a whole system. It means when you change a token, the change flows everywhere it is used.

This makes Penpot perfect for creating and managing design systems. Tokens can be exported as JSON and dropped straight into apps or workflows, bridging the gap between design and development. Instead of design work sitting in isolation, Penpot allows design decisions to feed directly into the codebase in a structured way.

I’ve also been looking into how these tokens could connect to WordPress, particularly through Elementor. If the workflow between Penpot and Elementor can be smoothed out using tokens, it could open up a practical way to keep brand consistency from the design stage straight through to a live site.

Community growth

Penpot is open source, and the community around it has grown quickly. The platform has gone from being a small project to one that is now shaping up as a genuine alternative to the big players. Because the code is open, the community has direct influence on the roadmap, and the developers behind Penpot are quick to respond to feedback. That means features like design tokens and upcoming component variants are being created with real input from the people using it day to day.

Sharing and collaboration

Sharing work in Penpot is straightforward. You can link directly to a file, and anyone can open it in the browser. They don’t need an account or a paid plan to see what is inside. Once open, there’s a built-in commenting system so teams can review designs together. For developers, there is a dev mode that exposes ready-to-use HTML, CSS, and SVG. This makes the whole review and handoff process open and transparent.

A cautious approach to AI

Like most modern platforms, Penpot has explored AI. But rather than chasing hype, the team have chosen to focus on product stability. They are working on performance, fixing bugs, and refining the basics before committing to anything AI heavy. This product first approach feels right. Design tools need to be reliable at their core before new technology is layered on top. It is a grounded decision that reflects well on where Penpot is headed.

Developer handoff

One of the biggest differences I’ve noticed compared to Figma is developer handoff. Figma now locks dev mode behind a paywall, but in Penpot it is free. Developers can switch to dev mode directly in the browser, inspect any mockup, and pull out HTML, CSS, and SVG without restrictions. This makes collaboration fairer, especially for smaller teams or independent designers who can’t justify extra subscriptions just for handoff.

Where it still falls short

Penpot isn’t perfect yet. Larger files can slow it down, and you sometimes need to refresh the browser if layers misbehave. Component variants, which are a big deal for managing states and scaling design systems, aren’t in the platform yet. They are in development and highly requested, but until they arrive, it remains a gap compared to other tools.

The prototyping features are fine for basics, with triggers and transitions available, but there is no deep support for advanced CSS level animations yet. When this does come, Penpot could stand out as a real interaction design tool, not just a layout tool.

Another limitation is that Penpot runs in the browser. While this makes it accessible anywhere, there is no official standalone desktop app. There are community-built wrappers, but nothing fully supported.

My takeaway

Penpot feels only a few iterations away from being a tool I could switch to full time. It already has solid foundations: open source, standards driven, and built with the web in mind. Its support for design tokens, the open approach to developer handoff, and its steady community growth all show a clear direction.

For now, it needs polish, performance improvements, and the addition of variants and better animation support. Once those arrive, Penpot could easily become my go to tool for design work.