- Qt 5.15
- Qt Quick
- Qt Quick Tools and Utilities
- Qt 5.15.19 Reference Documentation

# 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 Quick Designer

The Qt Quick Designer 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.

The following is a list of example applications that use UIs created by the Qt Quick Designer:

- Qt Quick Controls - Contact List
- Qt Quick Controls - Flat Style

### QML Debugger and Profiler

Being a declarative language, a piece of QML code provides minimal details about the entities defined. In such a scenario, the QML debugger is a very useful utility that enables:

- debugging JavaScript functions,
- executing JavaScript expressions,
- and inspecting QML properties.

Besides this, a 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.

### Related Information

- QML Debugger
- QML Profiler

### QmlLive, GammaRay, Squish, and Felgo QML Hot Reload

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.

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 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.

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.

### Related Information

- QmlLive
- GammaRay
- Squish
- Felgo QML Hot Reload

## Qt Creator

The Qt Creator IDE is the key tool that enhances the overall developer experience of working with Qt Quick. Its auto-completion and debugging features make working with Qt Quick easier. Besides this, most of the tools and utilities mentioned in the earlier sections are integrated into it, with the possibility of integrating 3rd party tools such as QmlLive and GammaRay.

### Related Information

- Qt Creator Manual