The CTkV6 branch requires CustomTkinter 6.0.0 and supports label border width and colour editing.
CTk Theme Builder is a desktop editor for creating, previewing, and refining themes for CustomTkinter applications.
It provides a live, visual workflow for editing CustomTkinter theme colours, supported widget geometry, palettes, and theme metadata without hand-editing theme JSON files.
The application is designed to make iterative theme work practical: you can experiment with colours, compare light and dark appearance modes, reuse palette colours across a theme, and validate the result against realistic widget rendering as you work.
- Live visual editing of CustomTkinter theme colours with immediate preview feedback
- Editing of supported widget geometry properties such as corner radius and border width
- Light and dark appearance-mode workflows, including copying and flipping values between modes
- Persistent theme palette for planning, reusing, and refining colours across a theme
- Colour harmonics generation from a keystone colour to help build coherent palettes
- Bundled icon browsing with CustomTkinter code-snippet generation for available Font Awesome icons
- Drag-and-drop, clipboard, and shade-adjustment workflows for fast colour iteration
- Palette-driven cascade updates for applying a colour across related widget properties
- Theme merge, import, and export support for reuse and distribution
- Provenance metadata for themes created and maintained in the builder
- Preview and validation support for realistic widget states, including disabled rendering
- Built-in theme and palette assets to help you get started quickly
On macOS, first check that the Python you plan to use has Tk support: python3 -m tkinter should open a small test window. If it fails to import _tkinter, follow the macOS Tk instructions before creating a virtual environment.
For a predictable location, create ~/ctk_theme_builder for the virtual environment. This is separate from ~/CTkThemeBuilder, where the application stores your themes and settings. Install from PyPI with:
mkdir -p ~/ctk_theme_builder
cd ~/ctk_theme_builder
python3 -m venv .venv
source .venv/bin/activate
python -m pip install ctk-theme-builderIf you manage several Python versions, see the optional pyenv installation route.
On Windows PowerShell:
New-Item -ItemType Directory -Force -Path "$HOME\ctk_theme_builder" | Out-Null
Set-Location "$HOME\ctk_theme_builder"
python -m venv .venv
.venv\Scripts\Activate.ps1
pip install ctk-theme-builderHere, $HOME\ctk_theme_builder is the equivalent of ~/ctk_theme_builder. The package is installed inside .venv, so you do not need to clone this repository for a PyPI installation.
Alternative install methods for users who already use uv:
uv pip install ctk-theme-builder
uvx --from ctk-theme-builder ctk-theme-builderLaunch the application:
ctk-theme-builderOptional command-line arguments:
ctk-theme-builder --set-appearance Dark
ctk-theme-builder --set-theme /path/to/theme.jsonTo migrate themes and palettes from a legacy installation:
ctktb-migrate-assets /path/to/old/install- Python 3.10 to 3.13
- A desktop environment capable of running Tk-based GUI applications
- Installation and upgrade notes: docs/installs-upgrades.md
- User guide: docs/UserGuide.md
- Release notes: 3.3 series and 3.2 series
Released under the MIT Licence. See LICENSE.
