// 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
    analysis, and much more. See \l{https://doc.qt.io/tools.html}{Tools}.

    \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
*/
