Skip to main content

A supercharged theme extension for tkinter that enables on-demand modern flat style themes inspired by Bootstrap.

Project description

Downloads Downloads

ttkbootstrap

English | 日本語 | 中文

ttkbootstrap is a Python library that enhances tkinter by providing modern, flat-style themes inspired by Bootstrap. Easily create stylish GUI applications with built-in themes, pre-defined widget styles, and more.

Documentation

👀 Check out the documentation.

Features

✔️ Built-in Themes
Over a dozen curated dark and light themes.

✔️ Pre-defined Styles:
Loads of beautiful pre-defined widget styles such as outline and round toggle buttons.

✔️ Simple keyword API:
Apply colors and types using simple keywords such as primary and striped instead of the legacy approach of primary.Striped.Horizontal.TProgressbar. If you've used Bootstrap for web development, you are already familiar with this approach using css classes.

✔️ Lots of new Widgets:
ttkbootstrap comes with several new beautifully designed widgets such as Meter, DateEntry, and Floodgauge. Additionally, dialogs are now themed and fully customizable.

✔️ Built-in Theme Creator:
Want to create your own theme? Easy! ttkboostrap includes a built-in theme creator that enables you to easily build, load, expore, and apply your own custom themes.

Installation

Install ttkbootstrap using pip in the terminal/command prompt!

python -m pip install ttkbootstrap

Simple Usage

Instead of using long, complicated ttk style classes, you can use simple keywords with the "bootstyle" parameter.

To get started, add the import statement at the top of your file in your preferred IDE:

import ttkbootstrap as ttk

Then create a window using the ttk.Window(...) and .mainloop() commands. And add a couple buttons (b1 and b2) to create your first window!

root = ttk.Window(themename="superhero")

b1 = ttk.Button(root, text="Submit", bootstyle="success")
b1.pack(side=LEFT, padx=5, pady=10)

b2 = ttk.Button(root, text="Submit", bootstyle="info-outline")
b2.pack(side=LEFT, padx=5, pady=10)

root.mainloop()

Here is the desired result:

Here is the result of the code used above:

For more detailed usage, please refer to the Getting Started page This page includes creating buttons, adding widgets, different styles and more.

The new keyword API is very flexible. The following examples all produce the same result:

  • bootstyle="info-outline"
  • bootstyle="info outline"
  • bootstyle=("info", "outline")
  • bootstyle=(INFO, OUTLINE)

Icons

Add icons to your app buttons and labels using the ttkbootstrap-icons library.

Contributing

We welcome contributions! If you'd like to contribute to ttkbootstrap, please check out our contributing guidelines.

Links

Support

This project is proudly developed with the support of the PyCharm IDE, generously provided by JetBrains.

JetBrains logo

© 2025 JetBrains s.r.o. JetBrains and the JetBrains logo are registered trademarks of JetBrains s.r.o.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

ttkbootstrap-1.20.1.tar.gz (175.2 kB view details)

Uploaded Source

Built Distribution

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

ttkbootstrap-1.20.1-py3-none-any.whl (190.3 kB view details)

Uploaded Python 3

File details

Details for the file ttkbootstrap-1.20.1.tar.gz.

File metadata

  • Download URL: ttkbootstrap-1.20.1.tar.gz
  • Upload date:
  • Size: 175.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for ttkbootstrap-1.20.1.tar.gz
Algorithm Hash digest
SHA256 78cde59bba669e6836d13e53ab22e80caaf0236316d47c22ff14f9ea2179c145
MD5 9f4a05fcab076b64ff7df8bf6d2c96c9
BLAKE2b-256 e8b01107a9abe1f4886bffee7b3a6d33654402238cb4571ed14ac8466456b5cb

See more details on using hashes here.

File details

Details for the file ttkbootstrap-1.20.1-py3-none-any.whl.

File metadata

  • Download URL: ttkbootstrap-1.20.1-py3-none-any.whl
  • Upload date:
  • Size: 190.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for ttkbootstrap-1.20.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f7419801fa169108ed7dce52a6004e9f34a4b6706802c8e70c0d23f157ffb868
MD5 10c4b757b5028d7ae77309eb8e59c6c4
BLAKE2b-256 a4a5c5952be4ee2cbbf3267be91a5968f7ed1e6da371181eebb776a4633a3215

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