Color system generator

chiroptera

A perceptually uniform color system built in LAB space. Generate coherent palettes and semantic tokens for every local tool, from editors to terminals and dotfiles.

2 modes3 contrast levelstool-agnostic templates
A geometric bat with mirrored light and dark wings made from the chiroptera palette. Click a segment to select its mode and contrast.
Two wings × three tensions

Real editor preview

One renderer, running in Neovim.

This captured terminal session is a real integration, not a browser recreation. It follows the selected mode and contrast level above.

Neovim editing a Python file with the chiroptera dark normal colorscheme.
Neovim · dark normal · Python

Template generator

One color system, your local tools.

Chiroptera is a Python generator for coherent local tooling. The CLI exposes every palette and semantic color token, so any text configuration can become a template.

The included Vim template is the first renderer. A terminal, editor, launcher or dotfile can use the same tokens and be regenerated when you switch mode or contrast.

Inspect a palette

Render your template

For example: {bg.hex}, {red.bright.hex}, {fg.normal.hex}, and RGB/ANSI variants such as {bg.rgb}. Literal braces outside known tokens stay unchanged.

Vim template

Generated Vim · dark normal

Perceptual geometry

Distances, not guessed brightness.

Each lane places one semantic color family on the CIE LAB lightness axis. Equal spacing in L* corresponds to an equal perceived change in brightness.

The diagram follows the selected mode and contrast. Dashed outlines show background tension, context backgrounds, and stable text roles.

Generated palette

24 color roles · click a swatch to copy

Perceptual steps

LAB interpolation keeps the tint progression visually even instead of merely numerically even.

Stable foreground roles

Foreground colors stay fixed within each mode while hard, normal and soft tune the background contrast.

Three color roles

Dim colors define subtle context, normal colors support UI, and bright colors carry syntax.