{"id":15021592,"url":"https://github.com/5yutan5/pyqtdarktheme","last_synced_at":"2025-05-14T09:13:31.664Z","repository":{"id":37955500,"uuid":"393486167","full_name":"5yutan5/PyQtDarkTheme","owner":"5yutan5","description":"A flat dark theme for PySide and PyQt.","archived":false,"fork":false,"pushed_at":"2025-05-05T18:41:13.000Z","size":118330,"stargazers_count":644,"open_issues_count":41,"forks_count":96,"subscribers_count":9,"default_branch":"main","last_synced_at":"2025-05-14T09:12:48.002Z","etag":null,"topics":["dark-theme","darktheme","pyqt","pyqt5","pyqt6","pyside","pyside2","pyside6","python","qdarkstyle","qt","style","stylesheet","theme"],"latest_commit_sha":null,"homepage":"https://pyqtdarktheme.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/5yutan5.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"5yutan5","patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":null}},"created_at":"2021-08-06T19:48:01.000Z","updated_at":"2025-05-07T16:48:39.000Z","dependencies_parsed_at":"2023-09-26T08:49:24.150Z","dependency_job_id":"57a0b89a-95b2-4eb6-81c8-2fe2227f5c84","html_url":"https://github.com/5yutan5/PyQtDarkTheme","commit_stats":{"total_commits":354,"total_committers":5,"mean_commits":70.8,"dds":"0.21468926553672318","last_synced_commit":"96eb7e368039ab446952573bafc17d54b7ef5123"},"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/5yutan5%2FPyQtDarkTheme","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/5yutan5%2FPyQtDarkTheme/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/5yutan5%2FPyQtDarkTheme/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/5yutan5%2FPyQtDarkTheme/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/5yutan5","download_url":"https://codeload.github.com/5yutan5/PyQtDarkTheme/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254110448,"owners_count":22016392,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dark-theme","darktheme","pyqt","pyqt5","pyqt6","pyside","pyside2","pyside6","python","qdarkstyle","qt","style","stylesheet","theme"],"created_at":"2024-09-24T19:56:46.030Z","updated_at":"2025-05-14T09:13:31.634Z","avatar_url":"https://github.com/5yutan5.png","language":"Python","funding_links":["https://github.com/sponsors/5yutan5"],"categories":[],"sub_categories":[],"readme":"# PyQtDarkTheme\n\nPyQtDarkTheme applies a flat dark theme to QtWidgets application. There's a light theme too. Color balanced from the dark theme for easy viewing in daylight.\n\nCheck out the [complete documentation](https://pyqtdarktheme.readthedocs.io).\n\n**Project status**\n[![PyPI Latest Release](https://img.shields.io/pypi/v/pyqtdarktheme.svg?color=orange)](https://pypi.org/project/pyqtdarktheme/)\n[![Python Versions](https://img.shields.io/pypi/pyversions/pyqtdarktheme.svg?color=blue)](https://www.python.org/downloads/)\n[![Qt Versions](https://img.shields.io/badge/Qt-5%20|%206-blue.svg?\u0026logo=Qt\u0026logoWidth=18\u0026logoColor=white)](https://www.qt.io/qt-for-python)\n[![License](https://img.shields.io/github/license/5yutan5/PyQtDarkTheme.svg?color=green)](https://github.com/5yutan5/PyQtDarkTheme/blob/main/LICENSE.txt/)\n\n**Tests**\n[![pre-commit.ci status](https://results.pre-commit.ci/badge/github/5yutan5/PyQtDarkTheme/main.svg)](https://results.pre-commit.ci/latest/github/5yutan5/PyQtDarkTheme/main)\n[![codecov](https://codecov.io/gh/5yutan5/PyQtDarkTheme/branch/main/graph/badge.svg?token=RTS8O0V6SF)](https://codecov.io/gh/5yutan5/PyQtDarkTheme)\n[![Documentation Status](https://readthedocs.org/projects/pyqtdarktheme/badge/?version=latest)](https://pyqtdarktheme.readthedocs.io/en/latest/?badge=latest)\n\n## Features\n\n- A flat dark and light theme\n- Support PySide and PyQt\n- Sync with OS's theme and accent (Mac, Windows, Linux)\n- Resolve the style differences between Qt versions\n- Provide dark/light theme QPalette\n- Override Qt old standard icons\n\n## Themes\n\n### Dark Theme\n\n![widget_gallery_dark_theme](https://raw.githubusercontent.com/5yutan5/PyQtDarkTheme/main/images/widget_gallery_dark.png)\n\n### Light Theme\n\n![widget_gallery_light_them](https://raw.githubusercontent.com/5yutan5/PyQtDarkTheme/main/images/widget_gallery_light.png)\n\n## Requirements\n\n- [Python 3.7+](https://www.python.org/downloads/)\n- Qt 5.15+\n- PySide6, PyQt6, PyQt5 or PySide2\n\n## Installation Method\n\n- Last released version\n\n   ```plaintext\n   pip install pyqtdarktheme\n   ```\n\n- Latest development version\n\n   ```plaintext\n   pip install git+https://github.com/5yutan5/PyQtDarkTheme.git@main\n   ```\n\n## Usage\n\n```Python\nimport sys\n\nfrom PySide6.QtWidgets import QApplication, QMainWindow, QPushButton\n\nimport qdarktheme\n\napp = QApplication(sys.argv)\n# Apply the complete dark theme to your Qt App.\nqdarktheme.setup_theme()\n\nmain_win = QMainWindow()\npush_button = QPushButton(\"PyQtDarkTheme!!\")\nmain_win.setCentralWidget(push_button)\n\nmain_win.show()\n\napp.exec()\n```\n\nFurther information can be found in our docs:\n\n- [Usage Guide](https://pyqtdarktheme.readthedocs.io/en/latest/how_to_use.html)\n\n### Enable HiDPI\n\n```Python\n# enable_hi_dpi() must be called before the instantiation of QApplication.\nqdarktheme.enable_hi_dpi()\napp = QApplication(sys.argv)\nqdarktheme.setup_theme()\n```\n\nFor Qt6 bindings, HiDPI “just works” without using this function.\n\n### Light theme\n\n```Python\nqdarktheme.setup_theme(\"light\")\n```\n\n### Sync with OS's theme and accent\n\n```Python\nqdarktheme.setup_theme(\"auto\")\n```\n\n![sync with os theme](https://raw.githubusercontent.com/5yutan5/PyQtDarkTheme/main/images/sync_with_os_theme.gif)\n\nOn macOS, qdarktheme also syncs with accent colors.\n![sync with os accent](https://raw.githubusercontent.com/5yutan5/PyQtDarkTheme/main/images/sync_with_os_accent.gif)\n\n### Customizing colors\n\nYou can customize the theme color.\n\n```python\n# Customize accent color.\nqdarktheme.setup_theme(custom_colors={\"primary\": \"#D0BCFF\"})\n```\n\nFor a list of all customizable colors, see the Theme Color Reference:\n\n- [Theme Color](https://pyqtdarktheme.readthedocs.io/en/latest/reference/theme_color.html)\n\n### Sharp frame\n\nYou can change the corner style.\n\n```python\n# Default is \"rounded\".\nstylesheet = qdarktheme.setup_theme(corner_shape=\"sharp\")\n```\n\n### QPalette and stylesheet\n\nYou can also only load QPalette and stylesheet. `qdarktheme.setup_theme` uses the following functions internally.\n\n```Python\npalette = qdarktheme.load_palette(theme=\"dark\")\nstylesheet = qdarktheme.load_stylesheet(theme=\"dark\")\n```\n\n## Example\n\nTo check all Qt widgets, run:\n\n```plaintext\npython -m qdarktheme.widget_gallery\n```\n\n## License\n\nThe svg files for the PyQtDarkTheme are derived [Material design icons](https://fonts.google.com/icons)(Apache License Version 2.0). Qt stylesheets are originally fork of [QDarkStyleSheet](https://github.com/ColinDuquesnoy/QDarkStyleSheet)(MIT License). Other files are covered by PyQtDarkTheme's MIT license. The accent detector(qdarktheme/_os_appearance/_accent/_mac_detect) is inspired by [darkdetect](https://github.com/albertosottile/darkdetect)(3-clause BSD License).\n\n## Contributing\n\nAll contributions, bug reports, bug fixes, documentation improvements, enhancements, and ideas are welcome. You can get started by reading this:\n\n- [Contributing Guide](https://pyqtdarktheme.readthedocs.io/en/latest/contributing.html)\n\n## Change log\n\nSee [Releases](https://github.com/5yutan5/PyQtDarkTheme/releases).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F5yutan5%2Fpyqtdarktheme","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F5yutan5%2Fpyqtdarktheme","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F5yutan5%2Fpyqtdarktheme/lists"}