Qt Quick Tools and Utilities
Qt offers several tools and utilities to enable a rich developer experience, especially for Qt Quick developers. The following sections provide a brief introduction to those tools and utilities, and provide links to further information about them.
Qt Creator
The Qt Creator IDE is the key tool that enhances the overall developer experience of working with Qt and Qt Quick. Its editing, formatting, profiling and debugging features for Qt Quick make working with Qt Quick easier.
Qt Design Studio
Qt Design Studio enables designing Qt Quick-based UIs using simple drag-n-drop gestures that most designers are familiar with. It offers UI elements from the Qt Quick and Qt Quick Controls modules, as well as integration for custom UI elements.
Qt Quick Effect Maker (QQEM)
Qt Quick Effect Maker is a tool for creating shader effects for Qt Quick with high productivity and performance. You can run Qt Quick Effect Maker as a standalone tool.
QML Debugging
Qt Quick debugging enables:
- debugging JavaScript functions,
- executing JavaScript expressions,
- and inspecting QML properties.
The QML debugger is part of both Qt Creator and Qt Design Studio.
QML Profiler
The QML Profiler enables you to get necessary diagnostic information, allowing you to analyze the application code for performance issues. For example, too much JavaScript in each frame, long-running C++ functions, and so on.
The profiler is part of both Qt Creator and Qt Design Studio.
QmlLive
QmlLive is a 3rd party tool that offers a QML runtime capable of rendering changes to the code in realtime. It avoids the need to rebuild the application after every code change and install it on the target device. You can also extend it to build a custom runtime that suits your needs.
Felgo QML Hot Reload
Felgo QML Hot Reload is a third-party tool that updates QML and JavaScript code in your running application without recompiling and redeploying after each change. Unlike Live Reload, it preserves the application's current state after a reload and can run on multiple devices simultaneously to test and iterate code. Felgo Hot Reload supports all Qt target platforms and architectures.
GammaRay
GammaRay is a useful utility that provides diagnostic information about your application. It is similar to the QML Profiler described in the earlier section, but offers a lot more. For example, the number of items or QObjects created, function calls made, time taken by each function call, property value introspection at runtime, and so on. Such information is very handy, especially while debugging QML applications.
Squish
Squish is a well-known testing tool that automates UI testing by recording your actions or running scripts. Once the tests are setup, UI tests are a lot easier to run.
The qmllint tool
qmllint is a tool shipped with Qt that verifies the syntactic validity of QML files. It also warns about some QML anti-patterns. If you want to disable a specific warning type, you can find the appropriate flag for doing so by passing --help
on the command line.
qmlformat
qmlformat is a tool that automatically formats QML files in accordance with the QML Coding Conventions.
Qt Quick Compiler
The Qt Quick Compiler consist of two components:
The QML Language Server tool
QML Language Server is a tool shipped with Qt that helps you edit QML code in your favorite (LSP-compatible) editor.
SVG to QML converter [tech preview]
The svgtoqml tool converts an SVG document to a QML file that can be used as a component.
© 2024 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.