Pavel Laptev
pavellaptev.bsky.social
Pavel Laptev
@pavellaptev.bsky.social
Lead designer 𝘢𝘵 @gitbutler.com ⧓
pavellaptev.github.io
I write open-source code, doing UI and Figma plugins.
Design systems ✶ Open source ✼ Automation
#FigmaPlugins #DesignSystems #Frontend #OpenSource #UXUI #WebDev
I just realized that I don’t need to duplicate `width` and `height` for square elements. There are 3 ways to handle equal dimensions: The Good, The Bad, and The Ugly.
December 28, 2025 at 2:53 PM
🧵 Gemini vs. PC Building: It started with a simple request to build a PC layout on my sketch… and it gave me absolute gibberish. Then I double-checked in a new chat, and it admitted "yes, it's an AI bro".
December 25, 2025 at 8:12 PM
Safari, Firefox now has it. Waiting for Chrome to drop the required colorspace from color-mix(). It's time :-)
Using `color-mix()` without specifying a colorspace · Issue #1166 · web-platform-tests/interop
Description color-mix() can now be used without a colorspace. It should default to the oklab colorspace. This is better than the status quo where most developers will just add in srgb which is the ...
github.com
December 16, 2025 at 10:27 PM
Btw, I just added some fixes and features to the SVG Hell Yeah! plugin.

- Added missing collection names
- the ability to add a prefix and replace symbols on export

www.figma.com/community/pl...
December 15, 2025 at 12:50 PM
Just watched the Twilight Zone episode that definitely inspired Final Destination. It’s called 'Twenty-Two', 64 years old and holds up! 🤯
December 14, 2025 at 3:15 PM
I’ve never used an ortholinear keyboard before, but waiting for this one 👀
kbdfans.com/products/kbd...
KBDfans SOLAR keyboard kit
KBDFANS SOLAR SPECS Layout: Ortholinear Layout, 50 keys PCB: Hotswapable, 1.2 mm thickness, QMK firmware, USB-C interface, without RGB Case: Aluminum Top and Bottom, Anodized aluminum weight/PVD Stain...
kbdfans.com
December 6, 2025 at 8:11 PM
Just shipped a fresh update to TokensBrücke. You can import variables now! Still in beta, so handle with care and have fun!

Grab the plugin here → www.figma.com/community/pl...
December 6, 2025 at 1:11 AM
Exhibit A for why I’m not allowed to touch the office speaker.
December 4, 2025 at 11:37 AM
New swag illustration in progress. A little throwback to the non-AI era 😁
November 30, 2025 at 1:58 PM
Some new stickers arrived 😎 @gitbutler.com
November 20, 2025 at 3:10 PM
Just applied for the Figma Slots.
That should complete my 2023 feature wishlist.
October 30, 2025 at 12:04 AM
The AWS outage also affected @figma.com it’s slow and sometimes doesn’t load libraries. Oh well… let's wait.
October 20, 2025 at 10:08 PM
Despite all SVG’s power, you still can’t round just one corner of a rectangle — only full sides, vertically or horizontally. 🤷
October 16, 2025 at 1:43 PM
I wrote a new article about how we use Grid Layout on our new @gitbutler.com. I’m not a heavy Grid Layout user, but I really enjoy working with it on new projects, it solves many issues that previously required hacks. Check it out here:

blog.gitbutler.com/grid-happens
Grid Happens: Because Flexbox Wasn’t Enough
How we built a flexible, responsive 12-column CSS Grid system for our website redesign: lessons, hacks, and why grid finally made sense.
blog.gitbutler.com
October 14, 2025 at 9:25 AM
It oddly feels good to see that even fancy browsers like Arc have pages that look like this.
October 10, 2025 at 9:36 PM
This issue has been around for 3 years, but this article finally clears it up: edbartholomew.com/blog/how-to-...

If you're adding a custom cursor on Safari, you *must* use `image-set` — even for SVGs — or it’ll look blurry.
How to create SVG custom cursors that are not pixelated or blurry | Ed Bartholomew
Learn how to create SVG custom cursors that look sharp and clear on Safari retina displays with this step-by-step guide.
edbartholomew.com
October 10, 2025 at 1:16 PM
Loving the design and the fact that everything in a single CodePen 🙌
TIL: Arcball Controls

I can't believe this performs so well. The browser is recreating the SVG from scratch on every frame. Will be used on the RYBitten site (maybe :D)

codepen.io/meodai/pen/P...
October 8, 2025 at 1:01 PM
Been building a new Figma plugin that auto-generates frame/section paddings (Figma only goes up to 100px right now). The real challenge? Naming it. Some plugin names are pure struggle, and now I’m facing the same problem—what to call mine 😁
October 8, 2025 at 11:49 AM
I was wondering why there’s exactly `//` in `https://`. Fun fact: Tim Berners-Lee admitted it was unnecessary.
www.sitepoint.com/sir-tim-bern...
October 2, 2025 at 12:33 PM
That’s a funny one — crates.io/crates/cargo...
crates.io: Rust Package Registry
crates.io
October 2, 2025 at 10:21 AM
Not the most ridiculous part of the site is the idea itself — it’s that they don’t even use video for the animation, just endlessly loading PNGs… 🙃
September 23, 2025 at 9:26 PM
It’s been almost two years, but here’s my first article on the @gitbutler.com blog! 🎉
I love little CSS hacks — this one shows how to dynamically update counters that react to container width using only CSS.
👉 blog.gitbutler.com/responsive-i...
A Responsive Item Counter with CSS only
Learn to create dynamic "+X more" counters that update automatically without JavaScript, using CSS Container Queries, Custom Properties, and Counters for responsive components that adapt to container ...
blog.gitbutler.com
September 23, 2025 at 8:52 AM
keyboard wall installed!
The most peculiar one is the black industrial model. Almost a Severance vibe - The work is mysterious and important.
September 17, 2025 at 8:12 AM
Reposted by Pavel Laptev
⋈ v0.16.0 of GitButler introduces a native Claude Code UI for orchestrating multiple sessions in parallel. Check it out 👇
youtu.be/lTOo4v5KGkk
Claude Code Gets a Native UI Inside GitButler
YouTube video by GitButler
youtu.be
September 11, 2025 at 2:49 PM
Was making a large PR for a feature and just wanted to share how easy it is to reorder and amend commits with @gitbutler.com
September 11, 2025 at 1:02 PM