Is your feature request related to a problem? Please describe.
Currently, Graphify does not support Qt (C++) and the QML (Qt Modeling Language) ecosystem when parsing codebases. When pointing Graphify to a modern desktop, mobile, or embedded UI application built using the Qt framework, it cannot extract deterministic AST subgraphs for .qml files. Furthermore, traditional C++ parsers often struggle to cleanly resolve custom meta-object system mechanics (like signals, slots, and properties) unique to Qt development, leading to missing structural dependencies, broken cross-file links, and unmapped architectural hierarchies.
Describe the solution you'd like
I would like Graphify to add support for Qt and QML languages in its deterministic AST extraction layer (Pass 1).
Specifically:
- QML Grammar Support: Integrate the
tree-sitter-qml parser to read, extract, and index UI components, properties, inline JavaScript functionalities, signals, and imports inside .qml files.
- Cross-Language Bindings: Enable Graphify to build dependency edges between backend C++ logic (classes derived from
QObject, registered via qmlRegisterType or QML_ELEMENT) and frontend QML visual layers.
- Qt Macros Handling: Ensure the core C/C++ parsing pass successfully recognizes and surfaces connections stemming from Qt-specific macros (
Q_OBJECT, Q_PROPERTY, slots:, signals:).
Describe alternatives you've considered
- LLM-Inference Only (Pass 3): Relying solely on LLM fallback logic to piece together how QML and C++ link up. However, this relies on
INFERRED or AMBIGUOUS confidence tags rather than a 100% deterministic, local EXTRACTED map, driving up token usage and lowering graph accuracy on complex codebases.
- Pre-processing/Renaming: Changing
.qml file extensions to .js or .json to trick existing parsers, which fails completely because QML's structural layout is distinct.
Additional context
- Tree-sitter Parser for QML: There are open-source tree-sitter implementations available (such as
tree-sitter-qml) that can be integrated into Graphify’s core multi-language pipeline alongside its existing 33 supported languages.
- This feature would significantly benefit developers building cross-platform consumer apps, automotive interfaces, flight management systems, or desktop software leveraging the Qt framework who want to utilize toolkits like Claude Code or Cursor with a complete repository map.
Is your feature request related to a problem? Please describe.
Currently, Graphify does not support Qt (C++) and the QML (Qt Modeling Language) ecosystem when parsing codebases. When pointing Graphify to a modern desktop, mobile, or embedded UI application built using the Qt framework, it cannot extract deterministic AST subgraphs for
.qmlfiles. Furthermore, traditional C++ parsers often struggle to cleanly resolve custom meta-object system mechanics (like signals, slots, and properties) unique to Qt development, leading to missing structural dependencies, broken cross-file links, and unmapped architectural hierarchies.Describe the solution you'd like
I would like Graphify to add support for Qt and QML languages in its deterministic AST extraction layer (Pass 1).
Specifically:
tree-sitter-qmlparser to read, extract, and index UI components, properties, inline JavaScript functionalities, signals, and imports inside.qmlfiles.QObject, registered viaqmlRegisterTypeorQML_ELEMENT) and frontend QML visual layers.Q_OBJECT,Q_PROPERTY,slots:,signals:).Describe alternatives you've considered
INFERREDorAMBIGUOUSconfidence tags rather than a 100% deterministic, localEXTRACTEDmap, driving up token usage and lowering graph accuracy on complex codebases..qmlfile extensions to.jsor.jsonto trick existing parsers, which fails completely because QML's structural layout is distinct.Additional context
tree-sitter-qml) that can be integrated into Graphify’s core multi-language pipeline alongside its existing 33 supported languages.