Skip to main content

Framework Libraries Overview:

Framework Core Library

The framework-core library is the backbone of the framework. It provides the core functionalities that are used to drive an integration within a DCC. Constructed using Python, it leverages several other libraries including framework-qt, ftrack-qt, ftrack-utils, and ftrack-constants.

Structured for easy extension and customization, the framework-core library encompasses a set of constants and utilities utilized within the framework.

For handling QT related functionalities, the framework-core library depends on the framework-qt library. Additionally, ftrack-qt, ftrack-utils, and ftrack-constants libraries are employed for managing ftrack specific functionalities.

Framework Core Library

Framework-Qt Library

The framework-qt library aims to provide framework related QT widgets for various purposes. It includes the foundational classes and mixins necessary for crafting framework-compatible widgets and dialogs.

The purpose of this separate library is to ensure that the framework's QT components are distinct from the core library, in case another UI framework different from QT is required.

Central to its design is the integration with the ftrack-qt library, which enriches the framework-qt library with custom ftrack Qt widgets and dialogs.

Like the core library, the framework-qt library is also designed for ease of extension and customization. It features a collection of base classes for widget and dialog creation, along with mixins to facilitate the integration of Qt dialogs into the framework.

Ftrack QT Library

The Ftrack QT library offers a suite of generic, non-framework specific widgets and dialogs. Acting as a hub of reusable UI elements, the library facilitates seamless integration into different segments of the framework or even independent utilization.

Ftrack QT Library

Framework Projects

Projects such as framework-maya and framework-nuke are developed on top of the framework-core and framework-qt libraries, ensuring seamless framework integration with the respective applications.

Both framework-maya and framework-nuke projects share a similar structure. check the DCC-Integration page for more detailed information.

Default extensions specific to each Digital Content Creation (DCC) application are provided within the same project repository. These extensions are tailored to integrate the framework's core functionalities with the particular needs and APIs of the DCC application.

These projects utilize the framework-core library for core functionalities while harnessing the specific application's API for bespoke application-related functionalities.

Extensions

Framework Common Extensions

The framework-common-extensions directory contains extensions that are shared across multiple DCCs, providing common functionalities that are not specific to any single application.

DCC-Specific Extensions

Each framework project includes a set of extensions that are designed to work with the corresponding DCC application. For example, framework-maya will have an extensions folder that interact with Maya's API and toolset.

Extensions

Overview