Revision control
Copy as Markdown
// Copyright (C) 2026 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
/*!
\page qt-intro.html
\title Introduction to Qt
\brief Qt 6 features and its benefits.
Qt is a modern, cross-platform framework for building applications with
responsive, high-performance user interfaces. Whether you are developing
desktop software, mobile apps, or embedded systems, Qt provides the tools,
APIs, and design workflows you need to create polished, reliable products.
Qt supports a wide range of platforms and hardware, gives you a consistent
set of APIs, and includes professional tooling for both developers and
designers. With Qt, you write your application once and deploy it across
your target platforms with minimal adaptation.
\section1 Designing user interfaces
Qt's recommended and most capable UI technology is Qt Quick, which uses
QML, a declarative language designed specifically for building fluid,
animated, and device-friendly interfaces.
Qt Quick is ideal for:
\list
\li Highly animated and modern UX patterns.
\li Touch-based interactions.
\li Mobile and embedded devices.
\li Visually rich, GPU-accelerated UI components.
\li Rapid iteration and designer-developer collaboration.
\endlist
Qt also includes Qt Widgets, a mature C++-based UI toolkit mainly intended
for maintaining existing desktop applications. New UI development should
start with Qt Quick.
For more information, see \l{User Interfaces}.
\section1 Cross-platform development
Qt is built for cross-platform development. A large set of Qt modules is
available for Windows, macOS, Linux, Android, iOS, and a broad range of
embedded Linux boards and SoCs.
Qt abstracts away platform differences so your application logic and UI can
remain largely the same across targets.
Qt uses CMake as the primary build system. CMake integrates cleanly with
Qt Creator, Visual Studio Code, Visual Studio, and various continuous
integration systems.
For more information, see \l{Supported Platforms}.
\section1 Features and APIs
Qt features a large set of modules that cover most application needs,
including:
\list
\li User interfaces and controls.
\li Networking and communication protocols.
\li Graphics and rendering.
\li Web technologies.
\li JSON, XML, and binary data handling.
\li Localization and accessibility.
\li Sensors and hardware integration.
\li 2D and 3D visualization.
\endlist
\l{Qt Essentials}{Essentials} form the core of the framework and are
available across all supported development platforms and all tested
target platforms.
\l{Qt Add-Ons}{Add-ons} extend Qt with specialized capabilities such as 3D
rendering, data visualization, connectivity, multimedia, and more.
For more information, see \l{All Modules}.
\section1 Tools
Qt includes a set of development tools that support the entire workflow
from design to deployment:
\list
\li \l{\QC Documentation}{\QC} is a full-featured IDE for coding,
debugging, building, testing, packaging, and deploying Qt applications.
\li \l{\QDS Manual}{\QDS} is a visual design tool for creating 2D and 3D
Qt Quick interfaces. Designers can build layouts, animations, and
component libraries using a visual workflow and export production-ready
QML.
\endlist
Additional tools are available for low-level debugging,
localization, embedded device deployment, UI profiling, performance
\section2 Other development environments
If you prefer other development environments, Qt offers these IDE
extensions:
\list
\li \l{Qt Extension for VS Code}{Qt extensions for Visual Studio Code} for
QML editing, project setup, code navigation, and build workflows.
\li \l{Qt VS Tools}{Qt extensions for Visual Studio} for Windows C++
developers building Qt applications.
\endlist
\section1 Programming languages
Qt supports multiple development workflows:
\list
\li C++ is the primary language for building Qt applications and extending
Qt Quick with high-performance logic.
\li \l{The QML Reference}{QML} is used to create Qt Quick user interfaces.
\li \l{Qt for Python} enables Python developers to use Qt APIs and QML to
create applications rapidly.
\endlist
\section1 Where to go next
\list
\li \l{Getting Started with Qt}{Getting Started}
\li \l{Qt Examples And Tutorials}{Examples and Tutorials}
\li \l{Supported Platforms}
\endlist
*/