Skip to main content

A desktop theme editor for building and previewing CustomTkinter themes.

Project description

CTk Theme Builder

CTk Theme Builder

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.

Features

  • 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

Installation

Recommended installation from PyPI, using a virtual environment:

python -m venv .venv
source .venv/bin/activate
pip install ctk-theme-builder

On Windows PowerShell:

python -m venv .venv
.venv\Scripts\Activate.ps1
pip install ctk-theme-builder

Alternative install methods for users who already use uv:

uv pip install ctk-theme-builder
uvx --from ctk-theme-builder ctk-theme-builder

Usage

Launch the application:

ctk-theme-builder

Optional command-line arguments:

ctk-theme-builder --set-appearance Dark
ctk-theme-builder --set-theme /path/to/theme.json

To migrate themes and palettes from a legacy installation:

ctktb-migrate-assets /path/to/old/install

Requirements

  • Python 3.10 to 3.13
  • A desktop environment capable of running Tk-based GUI applications

Documentation

Licence

Released under the MIT Licence. See LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ctk_theme_builder-3.3.3.tar.gz (5.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ctk_theme_builder-3.3.3-py3-none-any.whl (5.2 MB view details)

Uploaded Python 3

File details

Details for the file ctk_theme_builder-3.3.3.tar.gz.

File metadata

  • Download URL: ctk_theme_builder-3.3.3.tar.gz
  • Upload date:
  • Size: 5.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.0

File hashes

Hashes for ctk_theme_builder-3.3.3.tar.gz
Algorithm Hash digest
SHA256 e154e9d49f98b101bb0862843c25d459b0242d93ac1f86c3f3dacea12de7f19c
MD5 f0a1589a0a57816d5809bff84e0df262
BLAKE2b-256 0938b8f9d9de9aa1b6e22843ed171c98b4bff46378ae4a6312f4e69d0caa7e80

See more details on using hashes here.

File details

Details for the file ctk_theme_builder-3.3.3-py3-none-any.whl.

File metadata

File hashes

Hashes for ctk_theme_builder-3.3.3-py3-none-any.whl
Algorithm Hash digest
SHA256 35e2f3db4eff99c4529a6603b1cbade1c171d4cff6a3e403bad225e630d17260
MD5 9f500513b6d64b43b53d749101fb1a49
BLAKE2b-256 4a142be4c97dc273f95d134dff387eac988b0dd94022a492100639edea251ff9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page