Skip to main content

PySide6 UI component library with the OmniNative dark theme

Project description

OmniNative UI

PyPI version Python Support License

OmniNative UI Banner

OmniNative UI is a comprehensive, modern UI component library built on top of PySide6. It provides a fully unified, premium dark theme out of the box, allowing developers to create sleek, professional desktop applications with minimal styling effort.

✨ Features

  • Premium Dark Theme: Pre-configured styling so you don't have to write any QSS/CSS.
  • Rich Component Library: 20+ ready-to-use widgets including core inputs, virtual tables, interactive multimedia players, and a chat interface.
  • Pythonic API: Intuitive wrappers around PySide6 that simplify layout management.
  • Native OS Integration: Smooth behavior across Windows, macOS, and Linux without losing the custom aesthetic.

OmniNative UI Components

🚀 Installation

Install the package directly from PyPI:

pip install omninative-ui

Installing from Source (Development)

If you want to contribute or modify the library locally:

git clone https://github.com/your-username/omninative-ui.git
cd omninative-ui
pip install -e .

💻 Quick Start

import sys
from PySide6.QtWidgets import QApplication
from omninative_ui import OWindow, OGroup, OButton, OLabel

app = QApplication(sys.argv)

window = OWindow(title="My App", width=400, height=300)

group = OGroup(window.body, orientation="v")
window.body.layout().addWidget(group)

group.layout_.addWidget(OLabel(group, text="Hello World", bright=True))
group.layout_.addWidget(OButton(group, text="Click Me", primary=True))

window.omninativeui_reveal_when_ready()
window.show()
sys.exit(app.exec())

📖 Documentation

For full API references, architecture guides, and instructions on how to create new components, please check the Full Documentation (/docs/INDEX.md).

🧩 Components

Core

Component Description
OWindow Top-level window with OmniNative theme
OGroup Vertical/horizontal layout container
OLabel Styled text label
OElidedLabel Auto-eliding text label
OSectionHeader Section heading
OSeparator Horizontal separator line
OButton Button with primary/danger variants
OComboBox Custom styled dropdown
ORadioButton Radio button with icon positioning
OCheckBox Custom styled checkbox
OStatusBar Status bar label
OOptionRow Label + widget row layout

Inputs

Component Description
OLineEdit Single-line text input
OTextBox Multi-line text input
OSpinBox Numeric input with +/- buttons
OSlider Slider with value display
OProgressBar Progress indicator

Containers

Component Description
OScrollArea Themed scrollable area
OTreeWidget Collapsible accordion container
OTabs Tab navigation
OVirtualTable Virtual table with inline editing

Media

Component Description
OAudioPlayer Full audio player with waveform
OAudioWaveform Interactive waveform visualizer
OImageViewer Image gallery with fullscreen

Chat

Component Description
OChatView Chat message history
OChatMessage Individual chat bubble
OChatInput Chat text input with actions
OActionMenu Floating action popover

🎨 Design Tokens

Access the color palette via the OMNINATIVE dictionary:

from omninative_ui import OMNINATIVE

print(OMNINATIVE["primary"])    # "#B6FF0E"
print(OMNINATIVE["background"]) # "#2C2C2C"

🤝 Contributing

Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update the documentation in the docs/ folder as appropriate and read our Component Development Guide.

📄 License

LGPL-3.0-only


🎖️ Credits & Attribution

This project is made possible thanks to:

  • Ricardo Gonzalez: LinkedIn
  • Mister Contenidos: Website
  • AI Assistance: Code architecture and development accelerated by AI tools.

Project details


Download files

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

Source Distribution

omninative_ui-0.1.0.tar.gz (35.4 kB view details)

Uploaded Source

Built Distribution

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

omninative_ui-0.1.0-py3-none-any.whl (37.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: omninative_ui-0.1.0.tar.gz
  • Upload date:
  • Size: 35.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for omninative_ui-0.1.0.tar.gz
Algorithm Hash digest
SHA256 79b1038ac02b63df604999bc100cd15b918372e93a0cf0aa51d8ef5959ccf77d
MD5 5961a01183a519b5eccff18209f91af7
BLAKE2b-256 b576506d26b45e58f91c30a1b71c5018bc421292f4e850cf148cf37d8f1c1b88

See more details on using hashes here.

File details

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

File metadata

  • Download URL: omninative_ui-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 37.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for omninative_ui-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ab26da23a1f4e770b3aa5df58dabf74a0e2ee1432d8410ae57c9ccfb76608380
MD5 97088582349a58df0710fb19197bf0d6
BLAKE2b-256 1a6b3d7434a33beb4dbc99f8e3958f693b8453ccbe2cca88cc5b5764b9ad33f6

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