Skip to content

OldJobobo/based

Repository files navigation

Based

A Base16 / Base24 color scheme editor built with Rust and egui.


Based screenshot

Features

  • Load and edit Base16 and Base24 YAML color scheme files
  • Import images and extract ranked Base16/Base24 palette variants
  • Visual swatch grid with single, multi, and range selection
  • Color editing in RGB, HSV, Oklab, and Oklch spaces
  • Perceptually uniform batch adjustments across selected colors
  • WCAG contrast checking and accent lightness audit
  • Semantic slot remap tool to reassign accent roles across the palette
  • Copy / paste swatch colors as hex
  • Live terminal and code preview panes
  • YAML output panel
  • Undo / redo with snapshot-based history
  • Built-in presets (Tokyo Night Moon, Dracula, Solarized Dark, and more)
  • Icon toolbar and dockable, rearrangeable panel layout

Build

Requires a recent stable Rust toolchain.

cargo build --release
cargo run --release

Install

User install to ~/.local (no root needed; make sure ~/.local/bin is on PATH):

make install

System-wide install:

sudo make install PREFIX=/usr/local

This places the binary on PATH, registers a based.desktop launcher, and installs the icon under the freedesktop hicolor theme. Uninstall mirrors install: make uninstall (or with the same PREFIX for system installs).

Usage

Action Input
Open file Ctrl+O
Save Ctrl+S
Import image(s) File -> Import Image…
Browse folder import File -> Import Folder…
Select all Ctrl+A
Deselect Escape
Undo / Redo Ctrl+Z / Ctrl+Shift+Z
Copy swatch hex Ctrl+C
Paste swatch hex Ctrl+V
Multi-select Ctrl+Click
Range select Shift+Click

Image Import

Imported images use a two-phase pipeline:

  1. Decode and show a display preview immediately.
  2. Build extraction bins in the background.

Palette extraction becomes available once all selected images finish phase 2. This keeps large-image imports responsive while preserving extraction quality for the current preview-based pipeline.

Format Support

Handles flat and nested Base16/Base24 YAML files, including the system: / name: (or scheme:) / author: / variant: spec fields and all common hex variants (#RGB, #RRGGBB, #RRGGBBAA, 0xRRGGBB, bare RRGGBB).

About

A Base16/24 Colorscheme Editor

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors