Skip to main content

PyPI PyPI - Downloads Total Downloads PyPI - License Minimum Python Version


Current Developers Contact
Federico Spada www.linkedin.com/in/federicospada13

Donate with PayPal


Custom2kinter is a python UI-library based on Tkinter, which provides new, modern and fully customizable widgets. They are created and used like normal Tkinter widgets and can also be used in combination with normal Tkinter elements. The widgets and the window colors either adapt to the system appearance or the manually set mode ('light', 'dark'), and all Custom2kinter widgets and windows support HighDPI scaling (Windows, macOS). With Custom2kinter you'll get a consistent and modern look across all desktop platforms (Windows, macOS, Linux).

This project was created to continue the development of CustomTkinter, since the original author lost interest in it. The first release of this library is v5.3.0, which continues the old numeration, and it is fully compatible with the last released version of the original library.
They can't live together in the same environment, so be sure to uninstall customtkinter before installing custom2kinter. This library is still imported using the original name, so existing code doesn't need to be updated.

| complex_example.py on Windows 11 with dark mode and 'blue' theme

| complex_example.py on macOS in light mode and standard 'blue' theme

Installation

Install the module with pip:

pip3 install custom2kinter

Documentation

The official documentation can be found on Read the Docs:

Example Program

To test custom2kinter you can try this simple example with only a single button:

import customtkinter as ctk

ctk.set_appearance_mode("system")
ctk.set_default_color_theme("blue")

# Create CTk window like you do with the Tk window
app = ctk.CTk()
app.geometry("400x240")

def button_callback() -> None:
    print("button pressed")

# Use CTkButton instead of tkinter.Button
button = ctk.CTkButton(master=app, text="CTkButton", command=button_callback)
button.place(relx=0.5, rely=0.5, anchor=ctk.CENTER)

app.mainloop()

which results in the following window on macOS:

In the examples folder, you can find more example programs and in the Documentation you can find further information on the appearance mode, scaling, themes and all widgets.

More Examples and Showcase

You can run the following code to show a simple App that displays all available widgets:

import customtkinter.utility.showroom as Showroom
Showroom.run()

Appearance mode change and scaling change

Custom2kinter can adapt to the Windows 10/11 light or dark mode:

https://user-images.githubusercontent.com/66446067/204672968-6584f360-4c52-434f-9c16-25761341368b.mp4

| complex_example.py on Windows 11 with system appearance mode change and standard 'blue' theme

On macOS you either need python3.10 or higher or the anaconda python version to get a dark window header (Tcl/Tk >= 8.6.9 required):

https://user-images.githubusercontent.com/66446067/204673854-b6cbcfda-d9a1-4425-92a3-5b57d7f2fd6b.mp4

| complex_example.py on macOS with system appearance mode change, user-scaling change and standard 'blue' theme

Button with images

It's possible to put an image on a CTkButton. You just have to pass a PhotoImage object to the CTkButton with the image argument. If you want no text at all you have to set text="" or you specify how to position the text and image at once with the compound option:

| image_example.py on Windows 11

Scrollable Frames

Scrollable frames are possible in vertical or horizontal orientation and can be combined with any other widgets. | scrollable_frame_example.py on Windows 11

Metadata

Release files for custom2kinter 6.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for custom2kinter 6.0.0
File Size Uploaded Provenance Actions
custom2kinter-6.0.0.tar.gz 15.3 MB Without provenance Details for custom2kinter-6.0.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for custom2kinter 6.0.0
File Interpreter ABI Platform Actions
custom2kinter-6.0.0-py3-none-any.whl Python 3 none any Details for custom2kinter-6.0.0-py3-none-any.whl

Total release size: 15.7 MB

Release files / custom2kinter-6.0.0.tar.gz

Download URL custom2kinter-6.0.0.tar.gz
Size 15.3 MB
Tags Source
SHA-256 checksum
How to use checksums
a9d1ca622a9185974a1c461a8fb8a12c43e490e03e3e90f482fc27a92dbdc9c0
BLAKE2b-256 checksum
How to use checksums
56681de8ae550cf02fe90922cdcdca52fa3d5934cd7890e566e74a2c843e9151
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.15.0

Release files / custom2kinter-6.0.0-py3-none-any.whl

Download URL custom2kinter-6.0.0-py3-none-any.whl
Size 384.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
41c523cb4ed6977d8eb9ccc78c6d3bb9d96648b8c242f93d6200f51990216349
BLAKE2b-256 checksum
How to use checksums
d6d77ee5a13e14838d0971d75e9ef0e73c89826ea53e6e426591ff29ccf3fa4e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.15.0

Security for custom2kinter 6.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

6.0.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page