Skip to main content

shadcn-qt (Python)

The PyPI distribution name is shadcn-qt; its normalized Python import name is shadcn_qt. Python 3.9 or newer is required. Install with exactly one Qt binding extra:

This is an independent Qt implementation and is not affiliated with or endorsed by the upstream shadcn project. It is published by Felorx.

pip install "shadcn-qt[pyside6]"
# or: pyqt6 | pyside2 | pyqt5

For source development, use pip install -e ".[pyside6]" in this directory.

Regenerate styles after editing packages/design-tokens/tokens.json:

python ../../tools/token-codegen/generate.py

Global and custom themes

from shadcn_qt import apply_theme, configure, create_theme

brand = create_theme(
    "brand",
    base="light",
    colors={"primary": "#7c3aed", "ring": "#8b5cf6"},
    radius={"md": "10px"},
)
configure(theme=brand, extra_qss="QWidget#sidebar { border: none; }")
apply_theme()  # uses the current QApplication

JSON theme files can be loaded with load_theme("brand.json").

Existing native widgets

Apply full default shadcn-qt styling to the complete existing and future QtWidgets family without replacing classes. Known controls use component-specific rules; uncommon or third-party QWidget subclasses receive a neutral themed fallback:

from shadcn_qt import apply_theme, enable_native_widget_styling

enable_native_widget_styling(app)
apply_theme(app, "light")

Use adopt_native_widgets(page) for one subtree, and disable_native_widget_styling(app) to remove unchanged adapter defaults. Set shadcn_qt_native_styling=False on custom-painted or third-party widgets that should be left alone.

Qt Designer

Install the recommended plugin host, then launch Designer with the registration path already configured:

pip install "shadcn-qt[designer]"
shadcn-qt-designer

Use from shadcn_qt.designer import load_ui to load the saved form under PySide or PyQt.

The public package exports 65 Qt-native classes covering the current named shadcn/ui catalog. Compound widgets retain normal Qt signals, models, layouts, and Designer-editable properties.

Core and Pro

This distribution is shadcn-qt Core. The separately ordered private shadcn-qt-pro distribution uses the shadcn_qt_pro import name. The shadcn_qt.pro namespace in Core only forwards to that package when it is installed; no Pro implementation or customer entitlement is included in this wheel. Core commercial rights and Pro access are separate Order Form items.

License

Current releases use GPL-3.0-only OR LicenseRef-Shadcn-Qt-Commercial. GPL-compatible projects may use the GPL option. Proprietary projects need a valid shadcn-qt commercial Order Form. The commercial license does not include the separate Qt, PySide, or PyQt licenses. See the LICENSE, LICENSES, and NOTICE.md files included in every wheel and source distribution.

Download files

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

Source Distribution

shadcn_qt-0.1.0.tar.gz (60.9 kB view details)

Uploaded Source

Built Distribution

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

shadcn_qt-0.1.0-py3-none-any.whl (71.5 kB view details)

Uploaded Python 3

File details

Details for the file shadcn_qt-0.1.0.tar.gz.

File metadata

  • Download URL: shadcn_qt-0.1.0.tar.gz
  • Upload date:
  • Size: 60.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.3

File hashes

Hashes for shadcn_qt-0.1.0.tar.gz
Algorithm Hash digest
SHA256 64b65840019e5d1a11220fad0c94eb48b0f76d00b5e32e1583ab345bfa5563c2
MD5 184d220802a2951b1e3dd8cf2c483997
BLAKE2b-256 9cd05c3a1c65b10b25ee939971fa50e67e192559077dc83beba7ed7eac6fea52

See more details on using hashes here.

File details

Details for the file shadcn_qt-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: shadcn_qt-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 71.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.3

File hashes

Hashes for shadcn_qt-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0fca0031d171307156a6013ee62dc83b8966ed3eb918f0805df424c2b4126fd5
MD5 691e084a84232a0fa4d3a03ec64d7829
BLAKE2b-256 2b0ae7c363cce5ad0c58dd2f8d5f5f9898d8df79692b42418ad84654d68b28f0

See more details on using hashes here.

Release history Release notifications | RSS feed

0.2.5

2 files

0.2.4

2 files

0.2.3

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

This release

0.1.0 This release

2 files

Supported by

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