Hey everyone!
I’m excited to share my latest plugin: OKLCH-Palette, a plugin for Penpot that helps you generate perceptually uniform and accessible color palettes using the OKLCH color space.
What does it do?
-
Picks the base color from your selected object or lets you pick one yourself
-
Uses OKLCH color space, so your palettes feel more natural instead of random RGB magic
-
Offers multiple generation curves: Linear, Sine, Quadratic, Arctangent, Exponential… you name it
-
Lets you adjust parameters in real time and manually tweak lightness via sliders
-
Works in separate tabs for Lightness, Chroma, and Hue
-
Drops color rectangles directly into your canvas (if you want), and can even add them to your color library
Why OKLCH?
Because it’s perceptually uniform, which basically means color steps look evenly spaced to our eyes, unlike typical RGB or HSL-based palettes. More accessible, more elegant.
Tech stuff (if you care):
-
Built with TypeScript and Vite
-
Uses Culori.js for precise color conversions
-
Supports gamut clipping, so it won’t give you weird out-of-gamut colors
-
Follows the Penpot Plugin API
Wanna try it?
-
Go grab it on the Penpot Hub: “OKLCH-Palette”
-
Or check the source code on GitHub: OKLCH-Palette repo (MIT licensed, so feel free to fork or suggest stuff)
Your feedback is more than welcome!
Please let me know:
-
Does the curve generator make any sense for your workflow?
-
Any weird bug or UI behaviour (it’s early, but I hope not too buggy!)
-
Features you’d love to have (gradients? export formats? presets?)
Would really appreciate your thoughts, honest feedback, feature ideas, or approval. Whatever you’ve got. Thank you!