awesome-qt

Qt toolkit

A curated list of tools, libraries, and resources for building GUI applications using the Qt framework.

A curated list of awesome tools, libraries, and resources for the Qt framework.

GitHub

1k stars
80 watching
184 forks
last commit: about 2 years ago
Linked from 3 awesome lists

awesomeawesome-listlistqtqt-applicationsqt-framework

Awesome Qt / Official Resources

Official WebsiteThe official website for the Qt framework
Qt DocumentationOfficial Qt documentation. Massive and comprehensive
Qt NewslettersThe best of Qt, straight to your spam filter
Qt Bug TrackerIf you think you've found a bug with Qt or one of its related projects, report it here (or see if someone else already has)
Qt Code ReviewSee how the Qt maintainers ensure their code is well-written
Source CodeBrowse the various source trees that comprise the Qt project. Has mirrors at several GitHub organizations:

Awesome Qt / Official Resources / Source Code

Qt
Qt Project
Qt Labs

Awesome Qt / Communities / Official

Mailing ListsMailing lists for users and developers of Qt alike. Arguably the best place to communicate directly with Qt's maintainers. Sees frequent activity
Qt ForumIf e-mail's not your thing, then you might also consider getting help or sharing knowledge on the forums
Qt WikiThe premier source for user-contributed Qt knowledge
IRCFor real-time chat with other Qt developers and users. The most popular channels are on Freenode, and include , , , and

Awesome Qt / Communities / Official / IRC

hereFor a full list of Qt-related IRC channels, see

Awesome Qt / Communities / Unofficial

QtForum.orgNot to be confused with the official

Awesome Qt / Tools / Official Tools

Qt CreatorBy no means does Qt lock you into its provided IDE, but its firm integration with the framework makes it a good sell. Among other things, it provides a UI designer, modeling tools, a documentation browser, and great QML support if you're into that sort of thing. There's also a plugin system, but third-party plugins are unfortunately scarce

Awesome Qt / Tools / Official Tools / Qt Creator

Qt DesignerIf you'd rather just design the interfaces and let someone else hook them up to logic, the GUI designer is available as a separate application
Qt AssistantSo is the documentation viewer, for that matter

Awesome Qt / Tools / Official Tools

Qt Visual Studio Add-inIf you'd rather stick to Visual Studio, this add-in will let you do that
Qt LinguistQt provides excellent internationalization/localization support, and this tool is very much responsible for it. Write translatable strings in your code with special macros, and this tool will aggregate them all for you so you or your translator(s) can broaden your software's audience
Qt Installer FrameworkNobody seems to talk about this, but Qt also provides a way to write an installer for your application. Does not support creation of macOS disk images, app bundles, or Linux packages, so be mindful of that when considering your project's distribution

Awesome Qt / Tools / Official Tools / Qt Installer Framework

macdeployqtGenerates macOS application bundles for Qt projects

Awesome Qt / Tools / Official Tools

qmakeThe bundled build system designed for Qt, though it can be used for non-Qt projects
qbsIf QML is more your style, consider this alternative build system
EmulatorDon't forget about Qt's mobile support!
qt/qttools200almost 2 years agoCommand-line tool that prints out a lot of information pertaining to both your Qt installation and your system in general. No link because there's no dedicated web page; just run on the command line. Excellent for troubleshooting
qt/qtdeclarative231almost 2 years agoLets you make easing curves suitable for QML, though if you understand the underlying math there's no reason you couldn't use the resulting numbers elsewhere

Awesome Qt / Tools / Third-Party Tools

CMakeGeneral C++ build tool that happens to have great Qt support
GammaRayPowerful debugger and general inspection tool for Qt-built software. Lets you inspect and manipulate the hierarchy, view object properties, edit widgets at runtime, and far, more. A two-sentence blurb can't do it justice, seriously check it out
moc-ng206about 4 years agoAlternative implementation of that's binary-compatible with Qt's version
Qt-Inspector406over 4 years agoInspection tool with similar goals to GammaRay, though much simpler
SIPGenerates Python bindings for C or C++ libraries. Has special support for Qt signals and slots, and was used to create
linuxdeployqt2,228almost 2 years agoLets you bundle your Qt based application as an AppDir or , making it possible to ship it to users of many desktop Linux distributions. Similar to the official and tools but for Linux
Qompoter24over 2 years agoDependency manager for Qt / C++

Awesome Qt / Bindings in Other Languages

Python (via PyQt)Arguably the most comprehensive and well-known binding of Qt to another language
Python (via PySide)Another binding for Python, which has been officially adopted by the Qt project
Ring (via RingQt)I've never heard of this language either, honestly
Mono/.NET languages (via QtSharp)576about 7 years agoExperimental wrapper for Qt that allows it to be used by .NET-based languages such as C#. Young, but active

Awesome Qt / Libraries / Integrations

mupdf-qtQt wrapper for the PDF viewer
neiasound1over 2 years agoOpenAL wrapper designed for games, with and support
PythonQtScript your Qt applications with Python. Not to be confused with or
QScintillaAbsurdly versatile and customizable text editor widget that provides syntax highlighting, code completion, code folding, recordable macros, and more. Built around . Created by the same company that developed
QtAwesome797almost 2 years agoAdd icons to your Qt application. Other icon sets are supported, too
QtLuaUse Lua as a scripting language for Qt-based software
qtruby2almost 11 years agoUse Ruby as a scripting language within your application
QuaZIPRead from and write to ZIP archives. Uses under the hood
VLC-QtWrapper for that lets you add a VLC-like media player to your application
SCodes117almost 2 years agoQt & QML wrapper for with ready-made QML items for decoding and generating 1D and 2D barcodes (aka. QR codes)

Awesome Qt / Libraries / New Functionality

CommuniCross-platform IRC framework. We've got enough IRC clients out there already, but I suppose this could also be used to implement a chat function in your application (e.g. for community support)
cutelystWeb framework that takes some ideas from Perl's Catalyst framework
DiceParser126over 2 years agoDice Roller framework based on its own syntax
DOtherSide203almost 3 years agoBinding for QML in C, primarily designed as an API for languages to support QML
FelgoCross-platform game engine and app framework that relies heavily on QML. Has a lot of tools and resources, and may even deserve its own list
glraw63over 5 years agoConvert images from any Qt-supported format to OpenGL-format textures. Useful for speeding up texture loading in graphics applications
grantlee141about 3 years agoDjango-inspired text templating
injeqt104almost 6 years agoDependency injection for Qt
KDE FrameworksMetric ass-ton of libraries for KDE, but many of them can be used with regular Qt applications as well. Cross-platform, for the most part
MarbleVirtual globe and map that can be used standalone or embedded within other applications
qgexedit2368almost 2 years agoEmbed a hex editor in your application
qml-material2,572over 8 years agoMaterial Design implemented in QML
QNodeView199over 10 years agoWidget that lets you create and edit nodes in a graph similar to the kind provided by Unreal Engine, Substance Designer, or PureData
QSimpleUpdater942almost 2 years agoLet your application update itself
qt-maybe29over 3 years agoFans of type theory will enjoy these sum and optional types
qt-mustache84about 3 years agoRender templates
QtAVActively developed multimedia framework
QtilitiesPowerful set of libraries that provide GUI, logging, testing, configuration, and project functionality (among other things) for your application
QtitanChartChart generation framework. Commercial
QtitanRibbonFor fans of the ribbons that Microsoft uses in their software. Commercial
qtnotify11over 11 years agoNotification framework
QtTerminalWidget54over 11 years agoMake your application capable of
QtVerbalExpressions64over 11 years agoCreate regular expressions using natural English expressions. Part of the project, which does the same thing for a wide variety of languages
qtwebserver62over 2 years agoIf you need to write a web application server in Qt for some reason, this'll help you along
QtXlsxRead and write spreadsheets in Microsoft Excel format
QwtQt widgets designed for scientific and technical applications
verdigris647about 2 years agoExperimental library to write Qt applications using the

Awesome Qt / Software Repositories

#inqludeThe most well-known aggregation of Qt-centric libraries out there. A package manager is also available
QtPods59almost 7 years agoAnother Qt-centric package manager. If you want to see the offerings without using QtPods, the full list is available , and can be added to by submitting a pull request
Linux-Apps.comDespite the name, Linux-Apps.com aggregates a wide variety of Qt-based tools and libraries for both end-users and developers
Stephan Binner's Ubuntu PPAsUbuntu users who are hesitant to install anything outside of their package managers can obtain any recent version of Qt from these repositories. Instructions for adding them are found within

Awesome Qt / Blogs

Planet QtOfficial aggregation of first-party and third-party Qt-related blogs
ICSQt-centric software consulting firm with a really neat blog. Specializes in graphics applications

Awesome Qt / Blogs / ICS

1Qt Tips and Tricks [ , ] - Odds and ends that might be nice to keep in your back pocket
Mastering Qt File SelectorsSometimes you need different variations of the same asset, but you won't know which ones to load until runtime. This class will decide for you
1Some Lesser Known Qt Tools and Commands [ , , , , ] - You don't find hidden gems by staying on the beaten path
Using Self-Signed Certificates in Qt CodeTrust nobody
Integrating C++ with QMLTalk to your scripting language. That's what it's there for
1Qt and OpenGL: Loading a 3D Model with Open Asset Import Library (Assimp) [ , ] - Assimp supports a lot of different model types; these articles will help you support all of them
What's new in Qt 5: QStandardPathsThis feature's been around for a few years, but it's still useful enough to warrant an entry on this list
What's New in Qt 5.2: QCommandLineParserAnother oldie, but still a goodie

Awesome Qt / Blogs

WoboqAnother software consulting firm that also contributes code to Qt. They seem to specialize in Qt's core architecture

Awesome Qt / Blogs / Woboq

Moc myths debunkedThe magic that Qt appears to rely in is really just a bunch of code generators. This post will bring you up to speed on the reality of the , the most notable one
1How Qt Signals and Slots Work [ , , ] - Qt's signals/slots system lets any object talk to any other object. Understanding these three articles will help you take full advantage of the feature
QMetaType knows your typesC++ isn't known for having good run-time type information, so Qt brings its own
C++11 in Qt5Stop writing C++ like it's 2003; learn how you can take advantage of recent C++ features in your Qt applications
C++14 for Qt programmers-
QStringLiteral explainedString literals are widely used in many applications; wouldn't it be nice if you could make them faster to access?
Nicer debug output in Qt using QT_MESSAGE_PATTERNIt's nice to be able to read your application's logs

Awesome Qt / Blogs

KDABconsulting firm that specializes in Qt

Awesome Qt / Blogs / KDAB

GammaRay: Taking a deep look into your Qt applicationTalk about and how it can help you dissect your Qt applications. Talk given at QtCon 2016 by
Multithreading with QtI want to make my application do more than once thing at once. What could possibly go wrong? Talk given at QtCon 2016 by
Linux perf for Qt developersHow to make your Qt application faster, Linux-style. Talk given at QtCon 2016 by

Awesome Qt / Blogs

Scythe-StudioYet another consulting company specialized in Qt

Awesome Qt / Blogs / Scythe-Studio

Qt Creator Cheat SheetConvenient document for improving your familiarity with Qt Creator IDE
Qt Installer Framework tutorialSeries about practical usage of Qt Installer framework with in-depth overview of different features
How to interface Qt with Android Java codeGetting wild and "native" with Android code in your Qt application
How to use NFC in Qt/Qml application?Have you ever wondered how to use NFC in Qt/Qml application? This blog post will give you a complex overview of the concept of near-field communication technology with examples of its usage in real life

Awesome Qt / Books

Qt5 C++ GUI Programming Cookbook, by - Overview of advanced GUI programming techniques for those familiar (but not satisfied) with the basics. The source code used in the book is available for free
Game Programming Using Qt: Beginner's Guideby Witold Wysota and Lorenz Haas - Good place to start learning how to program games with QML
Application Development with Qt Creator - 2nd Edition, by - Beginner's guide to Qt, with a lot of focus on Qt Creator and its associated tools
Qt 5 Blueprints, by - Seems to be about the overall structure of a Qt project
Mastering Qt 5, by and - Not your daddy's Qt. Tips and tricks for the experienced. The source code used in the book is available for free
PySide GUI Application Development - 2nd Edition, by Gopinath Jaganmohan and Venkateshwaran Loganathan - Imagine these other books, but in Python
Qt5 CadaquesFree book that focuses on QML, named for this town in northeastern Spain that the authors vacationed to once
Qt6 QML Book, by Johan Thelin, Jürgen Bocklage-Ryannel and Cyril Lorquet - Free book created by Qt Company. It provides you with a walk through of the different aspects of application development using the new Qt 6. It focuses on the Qt Quick technology, but also provides necessary information about writing C++ back-ends and extension for Qt Quick

Awesome Qt / Software that Uses Qt

Autodesk Maya3D animation and design software that has been used to create visual effects for some of the most popular movies and TV shows of all time
Davinci ResolveNon-linear video editing freeware with commercial plan used to create some Hollywood movies
CMakeThe closest thing to a standard C++ build system out there. The bundled GUI uses Qt
CRYENGINEBut can it run Crysis? Some auxillary tools use Qt
DoxygenThe most popular documentation generator for C++, though it supports other languages as well. The bundled GUI uses Qt
Google Earthvirtual globe
KDEOne of the most popular desktop environments for Linux
LMMSDigital audio workstation
MalwarebytesYour Windows desktop's personal bodyguard
MuseScoreMusic notation software
Parallels DesktopConsumer-focused virtualization
Qt CreatorSomething something eating your own dog food. Listed in the , but not listing it here doesn't feel right
RolisteamVirtual tabletop for remote Role Playing Games
ShotcutVideo editor
RUBELevel design tool for any game that uses the Box2D physics engine
TeamSpeakWhen gamers want to voice chat in a game that doesn't support it, they'll use this
Telegram DesktopSecure your conversations so well, you'll raise the blood pressure of potential eavesdroppers. The desktop client uses Qt and is open source
TiledPerhaps the world's most popular tilemap editor. Suitable for level design in games
VirtualBoxVirtualization software for x86/64 processors. The bundled GUI uses Qt
VLCOne of the most flexible open source video players in existence
Vuo— Realtime visual programming language for interactive media
WiresharkThe most popular packet-sniffer out there. You going to use this for good and not evil, right?
Wolfram MathematicaProgramming language, symbolic calculator, and an engineer's best friend
YabauseSega Saturn emulator
Ultimaker CuraSlicer application used to prepare your 3D models for printing with a 3D printer. Built with Uranium framework which is based on Qt 5 and Python 3

Awesome Qt / Other Relevant Awesome Lists

Awesome C/C++60,620almost 2 years agoThere's no reason you can't use C++ libraries that weren't designed for Qt. Sometimes they might even suit your needs better than what Qt offers
Awesome C3,505almost 4 years agoSame goes for C libraries; might wanna brush up on those RAII techniques while you're at it
Awesome CMake5,095about 2 years agoIf you're not using qmake for your project, you're likely using CMake instead
Awesome OpenGL2,182about 3 years agoQt is commonly used for graphics applications, even providing its own wrappers around OpenGL

Backlinks from these awesome lists:

More related projects: