A beautiful, cross-platform color picker with GUI and TUI support. Single static binary with comprehensive color format support.
cascolor is a modern color picker application written in Rust that automatically adapts to your environment. Whether you're working in a graphical desktop environment or over SSH, cascolor provides a consistent and intuitive interface for selecting, converting, and managing colors.
- Multiple Color Formats: HEX, RGB, RGBA, HSL, HSLA, HSV, HSB, CMYK, Lab, LCh, Luv, XYZ, Oklab, Oklch, and CSS Named Colors
- Dual Interface:
- GUI Mode: Beautiful native interface with X11/Wayland support (Linux), native Windows and macOS support
- TUI Mode: Terminal UI for remote sessions or systems without display
- Interactive Controls: Sliders with drag support, direct text input, and one-click copy buttons
- Eyedropper Tool: Pick colors directly from your screen
- Color History: Automatically saves your last 20 colors (configurable)
- Auto-Update: Built-in update system with stable, beta, and daily channels
- Themeable: Dark (default), Light, System, and Auto (time-based) themes
- Cross-Platform: Linux, Windows, macOS, and FreeBSD support
- System Tray: Optional system tray integration (can be disabled)
Download the latest release for your platform from the releases page:
- Linux:
cascolor-linux-x86_64orcascolor-linux-aarch64 - Windows:
cascolor-windows-x86_64.exe - macOS:
cascolor-macos-x86_64orcascolor-macos-aarch64 - FreeBSD:
cascolor-freebsd-x86_64orcascolor-freebsd-aarch64
curl -sSL https://raw.githubusercontent.com/casapps/cascolor/main/scripts/install.sh | bash- Download the appropriate binary for your system
- Make it executable:
chmod +x cascolor-* - Move to your PATH:
sudo mv cascolor-* /usr/local/bin/cascolor
# Launch the application (auto-detects GUI or TUI mode)
cascolor
# Show version information
cascolor --version
# Check for updates
cascolor --update
# Update from a specific channel
cascolor --update beta
cascolor --update dailyConfiguration file location:
- Linux/BSD:
~/.config/casapps/cascolor/config.toml - macOS:
~/Library/Application Support/casapps/cascolor/config.toml - Windows:
%APPDATA%\casapps\cascolor\config.toml
Example configuration:
[general]
theme = "dark" # Options: dark, light, system, auto
history_size = 20 # Number of colors to remember
[updates]
channel = "stable" # Options: stable, beta, daily
check_on_startup = true # Check for updates when app starts
check_in_background = true # Periodic background checks (every 24h)
prompt_before_update = true # false = auto-update without asking
[ui]
show_system_tray = true # System tray icon (can disable)
remember_window_position = true
default_color_format = "hex" # Default format shown- stable: Production releases (recommended)
- beta: Pre-release versions with new features
- daily: Nightly builds (bleeding edge)
- Docker (for building)
- Git
# Clone the repository
git clone https://github.com/casapps/cascolor.git
cd cascolor
# Build for all platforms
make build
# Build for current platform only (faster)
make build-local
# Run tests
make testcascolor/
├── src/ # Source code
├── tests/ # Integration tests
├── scripts/ # Installation scripts
├── .github/ # GitHub Actions workflows
├── .gitea/ # Gitea Actions workflows
├── Cargo.toml # Rust dependencies
├── Makefile # Build automation
└── release.txt # Current version
# Create a release (automatically increments version)
make release
# Or specify a version
VERSION=1.2.3 make releaseContributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create a feature branch:
git checkout -b feature/my-feature - Make your changes
- Run tests:
make test - Build:
make build - Commit:
git commit -am 'Add new feature' - Push:
git push origin feature/my-feature - Submit a Pull Request
MIT License - see LICENSE.md for details.
For bugs, feature requests, or questions, please open an issue on GitHub.