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();
}import sys
import fluentqt
from PySide6.QtWidgets import QApplication
fluentqt.prepare_high_dpi_application()
app = QApplication(sys.argv)
fluentqt.initialize_resources()
window = fluentqt.Window()
window.show()
sys.exit(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.