The Color Palette Generator on Lizely runs entirely inside your browser using client-side JavaScript, so the colors you enter are never uploaded, stored, or sent to any server. Every scheme is computed locally from the HSL color wheel — picking a base HEX such as #3b82f6 simply splits that color into hue, saturation, and lightness channels that math operations rotate on the spot. Because the work happens on your device, no account, sign-up, or network connection to a backend is required, and closing the browser tab is the only cleanup step you ever need. Nothing logs the HEX you typed, the scheme you chose, or the swatch you clicked. This article walks through what happens to your colors during a session, how the local math works, and how to use the generator when palette privacy matters — brand exploration, client dashboards, and personal mood boards all benefit from the same local workflow. Designers use this property deliberately: a palette built on a local-first generator leaves no server-side history that a colleague, employer, or third-party service can later inspect, even when the work is exploratory or unsigned.

What Happens to Your Colors When You Build a Palette
When you open the Color Palette Generator, the page loads a small set of HTML, CSS, and JavaScript files. After that single load, the page talks to your browser only — there is no API call, no analytics ping carrying your color, and no backend waiting for a form submission. The color picker, the HEX input box, and each swatch are static elements on the page; the only state they share lives in the browser's memory for the lifetime of the tab.
Three verified facts from the tool's contract make this concrete. First, the generator runs entirely in your browser using client-side JavaScript. Second, nothing is uploaded, stored, or sent to a server. Third, no account is required to use it.
If you close the tab without copying a HEX, the in-memory values go away with the page. Refreshing the page resets the base color back to its default. There is no "saved palettes" history, no account-based library, and no cloud sync — the tool does not even feature a history pane, because there is nothing to populate one with.
This matters because color choices often leak information about in-progress work. A brand-testing palette hints at a new product direction. A client dashboard palette hints at a roadmap item. A mood board hints at a personal project you have not announced yet. Sending any of those off to a server, even anonymously, expands the surface where that information lives. A purely client-side generator keeps the surface area at zero.
How the Palette Is Calculated Inside Your Browser
The Color Palette Generator uses a single source of truth for every scheme: the HSL color wheel, where hue is a circle running from 0° to 360°. Picking a base HEX turns into three numbers — a hue between 0° and 360°, a saturation from 0% to 100%, and a lightness from 0% to 100% — and the schemes are produced by rotating that hue by a fixed angle while keeping saturation and lightness either equal to the base or stepped along a tonal scale. Saturation and lightness are deliberately separated from hue so the relationships between colors stay predictable as you switch schemes.
A small worked example shows why this matters. Take the base color #3b82f6, the same HEX the tool's instructions use. Converting that HEX to HSL gives a hue of roughly 217° at about 91% saturation and 60% lightness — a saturated blue. The complementary scheme rotates the hue by 180°, which lands at 397°. The generator performs hue wrap-around, so 397° − 360° = 37°. At 91% saturation and 60% lightness, a 37° hue is a warm orange-yellow. That orange-yellow is the direct, maximum-contrast complement of the original blue, computed entirely on your device without consulting any external service.
That single computation also illustrates the design reason for choosing HSL over raw RGB. If you instead tried to compute a complement by inverting each RGB channel (R' = 255 − R, G' = 255 − G, B' = 255 − B), the result depends on the exact channel values and rarely lands on a pleasing pair. Hue rotation on the HSL wheel guarantees the result sits exactly opposite the base on a 360° circle, no matter which saturated color you started from, and classical color theory describes those relationships as the foundation of harmonious palettes.
The six available schemes are all expressed as the same kind of rotation or step:
| Scheme | Math applied to base hue | Typical use |
|---|---|---|
| Complementary | +180° | Maximum contrast; call-to-action accents |
| Analogous | ±30° | Calm, cohesive combinations; natural palettes |
| Triadic | +120° and +240° | Balanced, vibrant three-color sets |
| Tetradic | +90°, +180°, +270° | Rich four-color schemes with two pairing anchors |
| Split-complementary | +150° and +210° | Softer contrast than straight complement |
| Monochromatic | Hue unchanged, lightness stepped | Tonal scales for UI depth, borders, hover states |
Every value in this table is a relationship the tool reports as a preset; the exact HEX and RGB outputs for your base color come from running the generator itself.
Build a Harmonious Palette Without Sending Anything
This section confirms the workflow stays local from the first click to the copied swatch.
- Open the Color Palette Generator in any modern browser. No extension, no plugin, no account.
- Choose a base color with the color picker — or type a HEX directly into the HEX field, for example #3b82f6.
- Select a scheme from the six options: complementary, analogous, triadic, tetradic, split-complementary, or monochromatic. The palette updates instantly on your screen.
- Read the HEX, RGB, and HSL values shown beneath each swatch. Those numbers live in the DOM of the page until you close the tab.
- Click any swatch to copy its HEX to your clipboard. The copy is a local operation; the browser only hands the string to your clipboard, not to a server.
- (Optional) Repeat with a different scheme if the first set does not fit the mood — your browser memory holds only the current scheme, and refreshing returns to defaults.
At no point is a HEX transmitted. If you watch your browser's network tab while running the tool, the only network activity after the initial page load is for static assets that the browser has already cached.
Why Local Processing Matters for Color Work
Designers and developers choose local-first tools for several practical reasons, not just privacy headlines.
Predictable results. Because the math is the same on every machine, the complementary of #3b82f6 is the same in Tokyo as it is in Toronto. A server-side generator that rotates hue correctly today might silently change its algorithm in an update; your locally cached logic does not.
Works offline. Once the page is cached by your browser, you can continue using it on a flaky café Wi-Fi or on a flight without losing palette access. The same cannot be said for a tool that depends on a live API for every scheme change.
Lower exposure of unfinished ideas. When you are testing brand colors before an announcement, you do not want your shortlist circulating through any logging pipeline. Local processing removes that pipeline from the workflow entirely.
No accounts to manage. The Color Palette Generator does not ask for an email, a sign-in, or a payment method. There is also no "history" of your palettes stored anywhere, because there is no history feature — every visit starts from the default base color.
For readers who want a deeper look at the local-first design, the Color Palette Generator alternative guide covers what a browser-based tool replaces in a typical SaaS palette workflow.
Pairs Well With: Contrast and Conversion Tools
Building a palette is the first step. Putting it on a real page or in a real product usually means exporting each color and checking it against text or other backgrounds. Every step after the generator can also stay local.
For checking whether a swatch reads on a chosen background, the Color Contrast Checker compares any text/background pair against WCAG 2.2 AA and AAA right in the browser, so you can validate a palette without uploading copy or screenshots. For converting between formats when a downstream tool asks for a specific notation, the HEX to RGB converter and the RGB to HSV converter both run client-side and copy the converted value with a single click. If a design ends up needing a gradient between two of your palette colors, the Color Gradient Generator builds the CSS for it locally and hands you the ready-to-paste declaration. None of these neighboring tools require an account, and none of them send your colors anywhere.
A Quick Privacy Checklist Before You Start
- Close any unrelated personal tabs in the same browser window — a clean profile keeps the surface area tight for sensitive brand work.
- Use a private or incognito window for one-off palettes you do not want associated with your main profile.
- Disable browser extensions that read page content while palette work is open. Most do nothing, but a passive rule of "no surprise readers" is worth keeping.
- Run the tool offline after the first page load for the strongest guarantee. Once the assets are cached, JavaScript does not need a network connection.
Those four steps are defensive rather than required — the generator itself already keeps your colors on your device. They are habits that make the local-first design of the tool even more robust.
If you're weighing options, RGB to CMYK Palette Ideas: From Screen to Paper covers this in detail.