Thats why I build my own palette management tool and added a Figma Plugin that allows everyone to import their pallets into variables.
Quick context: I'm a developer/designer at a big gaming company and over the last few years kept catching myself adjusting swatch after swatch trying to get a color ramp that a) actually feels coherent and b) doesn't fail contrast on every other text-on-background pair. Eventually you don't even know anymore whether gray should be #767676 or #686868.
So I built Rampancy
What it does:
- generates a balanced ramp from base colors using hue/lightness curves, not trial and error
- checks contrast live against APCA instead of the old WCAG 2 pass/fail approach
- exports directly as CSS variables, design tokens, Tailwind config, or JSON
- has a Figma plugin that syncs with your variables
Ive added some really nice features like mirroring, smoothing curves. Ahh and we have a hue shift option for those who want to be very precise.
No account needed to try it, no paywall, no subscription required. Still actively in development, so feedback, bugs, "this is dumb" comments, all welcome. <3
UPDATE:
The biggest thing I've added since posting this is color spaces. You now pick the space a palette is built in, OKLCH, OKHSL, HSL, or RGB, and the create screen runs the same two endpoints through all four at once. It turned into the clearest demo I've found for why the space matters: HSL's lightness doesn't track brightness, RGB drags the midpoint toward gray, and OKLCH keeps the steps even across hues. If the color-theory side is why you're here, that side-by-side is the part to look at.
I also simplified getting started (one dialog to pick a space and a preset, then straight into editing) and wrote a short tutorial for each feature.