QML is a declarative language which allows user interfaces to describe themselves in terms of their visual components, and how they interact with each other. It is a highly readable language, which allows components to be interconnected dynamically. Additionally, components can be reused and customized within a user-interface. Designers and developers can create fluid animated user interfaces using QtQuick. They also have the option to connect these interfaces with any back-end C++ libraries. QML is both a programming language and a specification of user interfaces. It allows designers and developers to create visually appealing, performant, and fluidly animated applications. QML is a declarative, JSON-like syntax that is highly readable and supports imperative JavaScript expressions with dynamic property bindings.