Introduction
The JadeUI Python SDK is a library for building desktop apps with Python. It provides window management, IPC communication, system integration, and Web front-end integration based on JadeView WebView technology. This documentation tracks SDK 2.3.x, aligned with JadeView v2.3.0 (Build 26G02).
What is the JadeUI Python SDK
The JadeUI Python SDK is an object-oriented Python library that gives Python developers a complete toolchain for creating modern desktop apps. Built on JadeView's WebView technology, it lets developers use Python as the backend and Web technologies (HTML/CSS/JavaScript) as the front end to quickly build cross-platform desktop apps.
Core Features
- Application management: The
JadeUIAppclass provides application lifecycle management - Window management: The
Windowclass supports creating, configuring, and controlling WebView windows - IPC communication: The
IPCManagerclass enables bidirectional communication between the Python backend and the Web front end - Local server: The
LocalServerclass provides a built-in HTTP server for hosting Web content - Routing system: The
Routerclass provides a backend-driven routing system that supports built-in and custom templates - Event system: The
EventEmitterclass provides a flexible mechanism for subscribing to and publishing events - Dialogs and notifications:
DialogandNotificationwrap system file dialogs, message boxes, and desktop notifications - System integration:
Tray,HotKey,Clipboard, andSystemsupport tray icons, global shortcuts, clipboard access, system paths, display info, and version queries - YAML storage:
Storagewraps the JadeView 2.3 YAML persistence APIs - Native menus:
Menu.attach_context_menufor context menus (including WebView2 native items) - Window enhancements: DevTools, zoom, taskbar progress/flash, content protection, window levels, skip taskbar, no activate, and HWND-to-window-id lookup
- CLI toolchain:
jadeui init/run/doctor/japk/build/download/clean, withpyproject.tomlproject conventions
Use Cases
The JadeUI Python SDK is suitable for the following scenarios:
- Desktop app development: Build cross-platform desktop apps with Python
- Utility applications: Create tools and utilities with a modern UI
- Data visualization: Combine Web technologies to present data processed by Python
- Prototyping: Quickly build app prototypes and demos
Technical Architecture
The JadeUI Python SDK uses the following technical architecture:
┌─────────────────────────────────────────┐
│ Python backend │
│ ┌─────────────┐ ┌─────────────┐ │
│ │ JadeUIApp │ │ IPCManager │ │
│ │ (lifecycle) │ │ (comms mgmt)│ │
│ └─────────────┘ └─────────────┘ │
│ ┌─────────────┐ ┌─────────────┐ │
│ │ Window │ │ LocalServer │ │
│ │ (window mgmt)│ │ (asset svc) │ │
│ └─────────────┘ └─────────────┘ │
│ ┌─────────────┐ ┌─────────────┐ │
│ │ Router │ │ EventEmitter│ │
│ │ (routing) │ │ (events) │ │
│ └─────────────┘ └─────────────┘ │
└─────────────────┬───────────────────────┘
│ FFI/ctypes
┌─────────────────┴───────────────────────┐
│ JadeView DLL (Rust) │
└─────────────────┬───────────────────────┘
│
┌─────────────────┴───────────────────────┐
│ WebView2 / system WebView │
│ ┌───────────────────────────────────┐ │
│ │ HTML / CSS / JavaScript │ │
│ │ (front-end UI) │ │
│ └───────────────────────────────────┘ │
└─────────────────────────────────────────┘System Requirements
- Python version: Python 3.7+
- Operating system: Windows 10/11
- Runtime: WebView2 Runtime on Windows
- Python architecture: Windows supports x86 / x64 / arm64. The SDK downloads and loads the matching JadeView native library for the active Python interpreter architecture.
- Not supported: Upstream JadeView does not ship a Linux native library yet (still in development), so the SDK currently supports Windows only.
Version and DLL Update Rules
JadeUI automatically downloads the adapted JadeView DLL. The current SDK targets v2.3.0 and may select the latest build within the same release tag, such as a later build after 26G02.
Automatic updates are limited to build revisions within the same API version / release tag. Minor or major jumps such as 2.2 -> 2.3 or 2.3 -> 2.4 may include ABI or behavior changes and require an explicit SDK adaptation first.
Installation
Install the JadeUI Python SDK via pip:
pip install jadeuiOr use poetry:
poetry add jadeuiThen use the CLI:
jadeui init my-app --frontend html
cd my-app
jadeui runSee CLI and Application packaging.
Quick Example
from jadeui import Window
Window(title="Hello JadeUI", url="https://example.com").run()License
The JadeUI Python SDK is released under the MIT License, allowing free use, modification, and distribution.
Community and Support
- GitHub repository: https://github.com/HG-ha/Jadeui
- Documentation site: https://jade.run/sdks/python-sdk
- For questions or suggestions, feel free to submit an Issue or Pull Request