mirror of
https://github.com/mikalv/awesome-qt-qml.git
synced 2025-12-18 21:04:39 +03:00
e78f95271e30b38365e6317c65ccc1efafc00cfb
Awesome Qt
A curated list of awesome Qt and QML libraries, resources, projects, and shiny things. Inspired by awesome-cpp and other awesome lists.
- Awesome Qt/QML
- Android
- Apple iOS
- Async
- Binding
- Compression
- Cryptography
- Database
- Development
- Editor Integration
- Game Engine
- Graphics
- Hardware
- Images
- Javascript
- JSON
- Logging
- Math
- Misc
- Multimedia
- Networking
- Package Manager
- QML Spesific
- SDKs
- Styling
- Templates
- Testing
- Visualization
- Web Frameworks
- Web tech in QML
- X11/Wayland
- Software
Android
- androidnative.pri - Calling Android functions from Qt without using JNI.
- quickandroid - QML Theme and Component Library for Android.
- QuteLauncher - QML Android Launcher.
Apple iOS
- quickios - QML Theme and Component Library for iOS.
Async
- asyncfuture - AsyncFuture - Use QFuture like a Promise object.
- quickpromise - Quick Promise - QML Promise Library.
- quickfuture - Using QFuture in QML.
Binding
- PyQt - PyQt is a set of Python v2 and v3 bindings for Qt and runs on all platforms supported by Qt including Windows, MacOS/X and Linux. PyQt5 supports Qt v5.
- PySide - The PySide project provides LGPL-licensed Python bindings for the Qt. It also includes complete toolchain for rapidly generating bindings for any Qt-based C++ class hierarchies.
- go-qml - QML support for the Go language.
- go-qt - Qt binding for Go (Golang) with support for Windows / macOS / Linux / Android / iOS / Sailfish OS / Raspberry Pi / AsteroidOS.
- qmlrs - qmlrs allows the use of QML/QtQuick code from Rust.
- ruby-qml - ruby-qml is a QML / Qt Quick wrapper for Ruby. It provides bindings between QML and Ruby and enables you to use Qt Quick-based GUI from Ruby.
Compression
- KArchive - A library for creating, reading, writing and manipulating file archives like zip and tar. It also provides transparent compression and decompression of data, using formats like gzip, via a subclass of QIODevice.
Cryptography
- Qt Cryptographic Architecture (QCA) - Taking a hint from the similarly-named Java Cryptography Architecture, QCA aims to provide a straightforward and cross-platform crypto API, using Qt datatypes and conventions.
Database
- QxOrm - QxOrm library is an Object Relational Mapping (ORM) library for C++/Qt developers.
Development
- qml-livereload - Simple QtQuick app live viewer.
- hotloader.pri - Hot Reload QML Files.
- terrariumapp - UI Prototyping Tool for Coders (source).
- qmlfmt - command line application that formats QML files.
- QmlExplorer - A Qt QML running environment and examples explorer app.
Editor Integration
- vim-qml - QML syntax highlighting for vim.
- qml-mode - Qt Declarative UI (QML) mode for Emacs.
- Sublime-QML - QML support for Sublime Text 2 and Sublime Text 3.
Game Engine
- Bacon2D - Bacon2D is a framework to ease 2D game development, providing ready-to-use QML elements representing basic game entities needed by most of games.
- V-Play - V-Play Game Engine allows easy cross-platform mobile game development for all major platforms including iOS, Android, BlackBerry.
Graphics
- qml-box2d - Box2D QML plugin.
- Chart.qml - Chart.qml like Chart.js.
- qml-ogdf - This plug-in provides a binding of Open Graph Drawing Framework to QtQML (Version 5.0+).
Hardware
- qml-cvcamera - CVCamera is a QML wrapper for fast camera access using OpenCV. It works on desktop and Android.
Images
Javascript
- Node.qml - Node.qml is an effort to provide a Node.js compatibility layer to QML applications.
JSON
- qsyncable - A solution of nested Json List Model.
Logging
- qmllogging - Single-header only, Easylogging++ wrapper for advanced logging support for QML applications (unmaintained).
Math
- biginteger - QML BigInteger library.
Misc
- qmlweb - A QML engine in a web browser.
- qmlwebdriver - QtWebDriver is a WebDriver implementation for Qt.
- qml-virtualkey - Pure QML in-app virtual key/keyboard/pad.
- textsecure-qml - TextSecure UI in Go and QML.
- poor-maps - Maps and navigation.
- qml-presentation-system - This is a slide presentation system written in QML.
- qtshell - Manipulate files by a shell command style API.
- sparkqml - SparkQML - A QML Document Viewer for State and Transition Preview.
- qmlweb-parser - A QML parser in JavaScript.
- qml-creative-controls - QML controls for creative applications and creative coding.
- qtci - Collection of scripts to build Qt application in command line environment.
- qml-gnatt - QML Gantt - An efficient implementation of a gantt chart library for qml.
- qml-chilitags - QMLChilitags is a QML wrapper for the fiducial marker tracker Chilitags.
Multimedia
- QtAv - A multimedia playback framework based on Qt and FFmpeg to write a player easily.
- qmlvideo - QML video element backend by libVLC, rendered on gl texture.
- QmlVlcDemo - Simple demo app for QmlVlc lib.
- qmlmidi - MIDI plugin for Qt Quick. Enables using MIDI input or output devices from declarative QML.
Networking
- libmaia - libmaia is a easy-to-use XML-RPC library for Qt.
- libcommuni - A cross-platform IRC framework written with Qt (source).
- qxmpp - Cross-platform C++ XMPP client and server library.
- qml-sockets - Exposing Qt's C++ socket objects to QML for declarative use.
- HttpRequest - HttpRequest such as XMLHttpRequest, but more powerful.
Package Manager
QML Spesific
- frida-qml - Frida Qml plugin.
- qmlc - The Qml Compiler can be used to convert Qml source code files into precompiled Qml files. The precompiled Qml files are faster to load and do not expose the source code. Normally, the Qt either compiles the Qml files in the startup or interprets the Qml files runtime.
- viewstack.pri - ViewStack is a wrapper of StackView (QQC2) that provides a stateless interface.
- quickcross - QML Cross Platform Utility Library.
SDKs
- arcgis-runtime-toolkit-qt - This project contains QML source code for controls and utilities you can use with the ArcGIS Runtime SDK for Qt.
- QtFirebase - An effort to bring the Firebase C++ API to Qt + QML.
Styling
- fluid - Fluid is a collection of cross-platform QtQuick components for building fluid and dynamic applications.
- fontawesome.pri - Using FontAwesome in QML.
- font-awesome-qml - Font Awesome in QML (Qt Quick).
- qml-material - Material Design implemented in QtQuick.
- qml-bootstrap - Sweet Qml components inspired from Ionic framework style for mobile and desktop Qt/Qml projects.
- StratifyQML - Stratify Labs UI QML framework inspired by Twitter Bootstrap.
- FlatUI-Controls-QML - This is custom made and themed QML controls. The controls are made to look and behave just like Flat UI Toolkit.
Templates
- qpm-qt-creator-project-template - Qt Creator Project Templates with qpm.
- quickflux-project-template - Project template using QuickFlux with unit tests.
- QMLApplicationTemplate - CMake project template for a simple QML application.
Testing
- qmlunit - An easy-to-use Unit Testing framework for Qt Declarative UI - QML [unmaintained].
- testable - QT/QML Test Runner and Utilities.
- testrunner - Qt Test Runner - A tiny tool to execute multiple QTestLib application and combine the testing result into a summary report.
Visualization
- QuickVtk - A VTK prototyping application based on QtQuick/QML.
Web Frameworks
- QDjango - QDjango is a web framework written in C++ and built on top of the Qt library. Where possible it tries to follow django's API, hence its name.
Web tech in QML
- quickflux - QuickFlux is an implementation of Flux Application Architecture Framework from Facebook.
- qredux - Redux for QML.
- react-qml - A bridge library that allows to use React.js with QML.
X11/Wayland
- sddm - QML based X11 and Wayland display manager.
- shell - QtQuick and Wayland shell for convergence.
Learning
- The QML Book - The QML Book. (source)
Software
- cool-retro-term - Is a terminal emulator which mimics the look and feel of the old cathode tube screens. It has been designed to be eye-candy, customizable, and reasonably lightweight.
- Tiled - Tiled is a general purpose tile map editor. It is meant to be used for editing maps of any tile-based game, be it an RPG, a platformer or a Breakout clone.
- yubioath-desktop - Yubico Authenticator for Desktop (Windows, macOS and Linux).
- tdesktop - Telegram Desktop messaging app.
- panopticon - A libre cross-platform disassembler.
- TelegramQML - Telegram API tools for QtQml and Qml. It's based on Cutegram-Core and libqtelegram.
- qmlvncviewer - VNC viewer component by qt quick.
Description
A curated list of awesome Qt and QML libraries, resources, projects, and shiny things.
Readme
292 KiB