An Enterprise-grade PySide6 UI Component Library
Project description
MonkeyQt
English | 简体中文
MonkeyQt is an enterprise-grade UI component library tailored for PySide6. Inspired by highly popular web frontend frameworks like Element Plus and shadcn-ui, it provides desktop application developers with highly aesthetic, consistent interactions, and out-of-the-box web-style components.
📖 Online Documentation | 🚀 Quick Start | 🎨 Theme Preview
✨ Features
- Modern Style: Replicates popular web frontend components and design systems.
- Rich Components: Supports buttons, checkboxes, dropdowns, tables, date pickers, topbars, pagination, progress bars, sliders, and other rich components.
- Out-of-the-box: One-click import for extremely simple usage.
- Seamless Integration: Built entirely with native PySide6 (QWidget, QSS, QPainter), with no dependencies on third-party heavy rendering engines.
📖 Documentation
You can access our complete usage guide, theme style preview, and all component manuals via the following link:
👉 Official MonkeyQt Documentation
The documentation includes:
- Installation & Configuration Guide
- Quick Start Examples
- 67 Built-in Design Styles (Themes) with Smooth Sliding Switching & Customization APIs
- Detailed Development Previews & Parameters for all basic/advanced components (including MkButton, MkDataTable, MkAuthScreen, MkUpload, MkImageCompare, etc.)
📦 Installation
Before official publication to PyPI, you can install this project locally as a developer package:
# 1. Enter MonkeyQt root directory
cd MonkeyQt
# 2. Install in editable mode with pip (-e flag stands for editable, changes in source code take effect immediately)
pip install -e .
🚀 Quick Start
Once the installation is complete, you can directly import monkeyqt in any Python script on your computer without manually adding paths to sys.path.
Create a new main.py to test:
import sys
from PySide6.QtWidgets import QApplication, QWidget, QVBoxLayout
# Simple import
from monkeyqt import MkButton, MkAlert
class MyApp(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle("MonkeyQt Quick Start")
self.resize(400, 300)
layout = QVBoxLayout(self)
# 1. Alert component
alert = MkAlert(title="Welcome to MonkeyQt", mk_type="success", show_icon=True)
layout.addWidget(alert)
# 2. Button component
btn = MkButton("Primary Button", type="primary")
btn.clicked.connect(lambda: print("MonkeyQt is awesome!"))
layout.addWidget(btn)
layout.addStretch()
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MyApp()
window.show()
sys.exit(app.exec())
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file monkeyqt-0.1.0.tar.gz.
File metadata
- Download URL: monkeyqt-0.1.0.tar.gz
- Upload date:
- Size: 206.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ee62ebf45457681dd1f71d91ee443e6a224a35d2ff93048390b2c6f4deed1f97
|
|
| MD5 |
0f329c9006b1397050dbfb041aabefe8
|
|
| BLAKE2b-256 |
2aff943c63b0ecf4247d3e33efadc5343932e7415c8afe6b0c01339faf8ada46
|
File details
Details for the file monkeyqt-0.1.0-py3-none-any.whl.
File metadata
- Download URL: monkeyqt-0.1.0-py3-none-any.whl
- Upload date:
- Size: 252.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
95e716687c69e46b3437bfaf44c92173fdef8b8271936b330c589081fc9d8872
|
|
| MD5 |
eddb5cb936ac5c8f18d5314f07662032
|
|
| BLAKE2b-256 |
67082f8a21172b76dbc6384e5fac1ecc193c7e617e13ec9c4c97612b1845b57f
|