164 documented widgets for PySide6 — charts, data tables, gauges, animated menus, window chrome, loaders and more. Every widget is authorable in Qt Designer, themed through design tokens with light/dark palettes, and documented with live screenshots generated straight from the code.
pip install QT-PyQt-PySide-Custom-Widgets[pyside6] # first install, with Qt
pip install --upgrade QT-PyQt-PySide-Custom-WidgetsRequires Python 3.10+ (PySide6's own floor).
You need a Qt binding. The library reaches Qt through qtpy and does not
bundle a binding — that is what lets you use PySide6 or PyQt6, instead of
forcing a second ~200 MB Qt download on anyone who already has one. The
[pyside6] extra above installs it for you. Prefer PyQt6? pip install PyQt6
and set QT_API=pyqt6. Install without a binding and the first import tells
you exactly this, rather than raising a bare QtBindingsNotFoundError.
Optional extras (niche widgets pull their heavier stacks on demand):
pip install "QT-PyQt-PySide-Custom-Widgets[qr]" # QCustomQRGenerator
pip install "QT-PyQt-PySide-Custom-Widgets[map]" # QCustomMapView (QtLocation)
pip install "QT-PyQt-PySide-Custom-Widgets[acrylic]" # AcrylicEffect blur
pip install "QT-PyQt-PySide-Custom-Widgets[loaders]" # QCustomPerlinLoader
pip install "QT-PyQt-PySide-Custom-Widgets[mcp]" # the Custom_Widgets MCP server
pip install "QT-PyQt-PySide-Custom-Widgets[all]" # everything above- Painted chart family — scatter, funnel, range bar, radial gauges, Sankey, candlestick, beeswarm, diverging bar, bubble, dot matrix, sparklines, donut and more; QPainter-native, crisp at any size.
QCustomDataTable— rich cell renderers (two-line, status, currency, link), synthetic select/actions columns, sortable headers.- Chrome & motion — custom title bars, hamburger and slide menus, animated stacked-widget transitions, flow layouts with animated reflow, progress and skeleton loaders, typewriter/sparkles/gradient text.
- Design-token theming —
applyDesignTokensdrives role-based QSS and light/dark palettes across the whole set. - Qt Designer first — every widget and property can be authored
visually; the examples ship with editable
.uifiles. - Typed — full
.pyistubs,py.typed, mypy-clean. - MCP server (
[mcp]extra) — agent control of Qt Designer, live app observation, widget catalog/signature/render tools. - Design-rule linter —
Custom_Widgets.lintcatches glyph icons, hardcoded hex colours, drop shadows and oversized icons.
Read the required
project structure
before starting — apps use a ui/ + compiled src/ + Qss/ layout that
keeps Designer files, generated code and themes separate. The
examples/ folder contains 82 complete apps built that way.
- Docs & widget reference: spinncompany.github.io/Docs-QT-PyQt-PySide-Custom-Widgets
- Widget gallery: 164 widgets with screenshots
- App showcase: 92 real apps
- Video tutorials: YouTube — SpinnTV
The free library is complete on its own and licensed GPLv3. For commercial teams there is Custom Widgets Pro — starting with DataTable Pro (virtualization, server-side sort/filter, grouping with aggregates, pivot, frozen columns, inline editing, CSV/XLSX export) — plus twelve premium example applications. Plans at customwidgets.org/pricing; active Patreon supporters get the same entitlements. The Pro licence includes a written GPL additional permission, so combining the core with Pro and your application does not pull your application under the GPL.
Thanks to everyone involved in the development of the project!
Made with contrib.rocks.
Note — this repository is the project's permanent home. It was previously published from the KhamisiKibet account, which is no longer accessible; all development continues here under SpinnCompany.
This package bundles third-party icon sets and a font. Full notices and the
license texts ship inside the package under
Custom_Widgets/THIRD_PARTY_NOTICES.md
and Custom_Widgets/licenses/.
- Icons by Font Awesome — Free icons licensed under CC BY 4.0 (© Fonticons, Inc.); fonts under SIL OFL 1.1, code under MIT. Icons may be recoloured/resized.
- Material Design Icons — Apache License 2.0 (© Google and contributors).
- Feather — MIT (© 2013-2017 Cole Bemis).
- Rosario — SIL Open Font License 1.1 (the bundled UI font).

