Fluent-Qt

Foundations

Getting started

Set up FluentQt in a C++ or PySide6 application and choose the modules you need.

Built on Qt Widgets

Each FluentQt control is a QWidget subclass; for example, Button inherits QPushButton and LineEdit inherits QLineEdit. Parent-child ownership, signals and slots, layouts, and model/view work as they do in Qt. FluentElement adds theme access, and QML+ adds bindings, anchors, and states.

Initialize the application

Call prepareHighDpiApplication() before creating QApplication, then initializeResources() to load the bundled fonts and icons. C++ and PySide6 use the same library.

#include <FluentQt/FluentQt.h>
#include <QApplication>

int main(int argc, char* argv[]) {
    fluent::prepareHighDpiApplication();
    QApplication app(argc, argv);
    fluent::initializeResources();

    fluent::windowing::Window window;
    window.show();
    return app.exec();
}

Choose modules

FluentQt::FluentQt contains all 2D controls, charts, and design tokens. Add FluentQt::Plugins for extension lifetimes, FluentQt::Particles for particle effects, FluentQt::Spatial for perspective views, or FluentQt::QmlBridge to embed QML.

API reference