Skip to content

bjarneo/peachy

Repository files navigation

Peachy

A delightful TUI for creating terminal color themes from images

Extract beautiful 16-color palettes from your wallpapers, fine-tune every color, and export to colors.toml


peachy.mp4

Why Peachy?

Ever found the perfect wallpaper but couldn't get your terminal colors to match? Peachy extracts dominant colors from any image using ImageMagick, intelligently assigns them to ANSI color roles, and lets you tweak each one until it's just right.

Features

  • Smart Color Extraction - Uses ImageMagick to extract 16 dominant colors and auto-assigns them to ANSI roles
  • Multiple Extraction Modes - Normal, Material, Pastel, Monochromatic, or Analogous algorithms
  • Image Preview in Terminal - See wallpapers using Unicode half-block rendering
  • Precision Color Tuning - Adjust colors via HSL sliders or direct hex input
  • Vim-style Navigation - Navigate with j/k, edit with Enter, quit with q

Installation

Quick Install (Recommended)

curl -fsSL https://raw.githubusercontent.com/bjarneo/peachy/main/install.sh | bash

Prerequisites

  • ImageMagick (for color extraction)
# Arch Linux
sudo pacman -S imagemagick

# Ubuntu/Debian
sudo apt install imagemagick

# macOS
brew install imagemagick

Build from Source

Requires Go 1.21+

git clone https://github.com/bjarneo/peachy.git
cd peachy
go build -o peachy .

# Optional: Install to PATH
sudo mv peachy /usr/local/bin/

Quick Start

# Launch the TUI
peachy

# Open TUI with an image
peachy ~/Pictures/wallpaper.png

# Generate theme from command line (no TUI)
peachy generate wallpaper.jpg

# Apply a saved theme
peachy apply mytheme

Press o to open the file picker, select an image, and watch the magic happen.

Basic Usage

peachy [image]              # Launch TUI (optionally with image)
peachy generate <image>     # Generate theme from image
peachy apply <theme>        # Apply a saved theme
peachy list                 # List saved themes
peachy export <theme> <dir> # Export theme to folder

Key TUI Shortcuts

Key Action
j / k Navigate up/down
Enter Edit selected color
o Open file picker
s Save theme
a Apply palette to system
m Cycle extraction mode
t Toggle light/dark mode
q Quit

Documentation

Custom Templates

Generate config files for any application when applying themes:

# Install templates interactively
curl -fsSL https://raw.githubusercontent.com/bjarneo/peachy/main/docs/install-templates.sh | bash

# List available templates
peachy templates list

Supports: alacritty, btop, cava, dunst, foot, ghostty, gtk, hyprland, iterm2, kitty, mako, neovim, rofi, waybar, wofi, and more.

Related Projects

  • Aether - GTK theme creator (Peachy's big sibling)

License

MIT


Made with 🍑 by @iamdothash

About

A delightful TUI for creating terminal color themes from images

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages