Skip to main content

A maintained fork of CustomTkinter with composite kwarg sugar and curated bug fixes. Drop-in (`import customtkinter`) for the ekosystema (CTkMessagebox, CTkColorPicker, etc.).

Project description

ctkmaker-core

A maintained fork of CustomTkinter (v5.2.2 baseline) with:

  • Composite kwarg sugarwidget.configure(font_bold=True, font_size=14, label_enabled=False) works natively, no helper boilerplate in exported code.
  • Curated bug fixes — cherry-picked from the active fork landscape (Custom2kinter, Stukk).
  • Drop-in module name — still import customtkinter as ctk. CTkMessagebox, CTkColorPicker, CTkScrollableDropdown, CTkColorPalette work unchanged.

Installation

pip uninstall customtkinter   # if installed — both share the customtkinter module name
pip install ctkmaker-core
import customtkinter as ctk
print(ctk.__fork__)          # "ctkmaker-core"
print(ctk.__fork_version__)  # "5.2.2.1"
print(ctk.__version__)       # "5.2.2"  (upstream baseline)

What's different from vanilla CustomTkinter 5.2.2

Tracked in CHANGELOG.md per release. Detailed diff and Precedence Rules per composite live in docs/spec/FORK.md (Phase 7 — pending).

Composite kwargs — quick example

# Vanilla CustomTkinter — build the font yourself
font = ctk.CTkFont(family="Inter", size=14, weight="bold")
label = ctk.CTkLabel(parent, text="Hello", font=font)

# ctkmaker-core — composite kwargs as sugar
label = ctk.CTkLabel(parent, text="Hello", font_family="Inter", font_size=14, font_bold=True)

# Mixed — composite kwargs override the font object's matching attributes
font = ctk.CTkFont(family="Inter", size=14, weight="normal")
label = ctk.CTkLabel(parent, text="Hello", font=font, font_bold=True)
# Result: weight="bold" wins; family + size from font object

# Live update — same shape as native kwargs
label.configure(font_bold=False)

Native CTk API stays fully accessible. Composite kwargs are sugar, never replacement.

Platform support

  • Primary target: Windows 11 (development + manual testing)
  • Linux / macOS: best-effort until dedicated CI runs land (Phase 7.2). PRs welcome.

License

MIT. See LICENSE and NOTICE for attributions to upstream CustomTkinter (Tom Schimansky) and other fork contributors whose work was cherry-picked.

Project status

Pre-1.0. First release 5.2.2.1. Develops in parallel with CTkMaker — a visual designer for CustomTkinter UIs.

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

ctkmaker_core-5.3.1.tar.gz (268.5 kB view details)

Uploaded Source

Built Distribution

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

ctkmaker_core-5.3.1-py3-none-any.whl (308.7 kB view details)

Uploaded Python 3

File details

Details for the file ctkmaker_core-5.3.1.tar.gz.

File metadata

  • Download URL: ctkmaker_core-5.3.1.tar.gz
  • Upload date:
  • Size: 268.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for ctkmaker_core-5.3.1.tar.gz
Algorithm Hash digest
SHA256 844dd3ed966410a76c45930f80d5cd40153a8526e5b5033643ff7324ca89c372
MD5 acebb9e93c8bc6c0cd06ec822dfc1af8
BLAKE2b-256 e12fe1d3c0caf87172bf2853e77640ac02b91dbc1248e86cbc382ea5c46a8335

See more details on using hashes here.

File details

Details for the file ctkmaker_core-5.3.1-py3-none-any.whl.

File metadata

  • Download URL: ctkmaker_core-5.3.1-py3-none-any.whl
  • Upload date:
  • Size: 308.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for ctkmaker_core-5.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a8f46ffc8f3d605d44213487a5273ba48e1afecb269ded7dc1ea510df0c918fd
MD5 84aae0197751420c5547ac44cea7b83f
BLAKE2b-256 76c52d43fa5e70f48c17fb4efe8e468a44612cabc4ebe15694caab0ce85ccf64

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