A new face for the Qt Project

Qt has always been open-source. In 2011 the Qt Project was established to provide an improved contribution experience and open governance for Qt. This has been a great success and many valuable contributions to Qt are coming from outside of The Qt Company. 

Being an open collaboration effort, the coordination of the evolution has been in charge of contributors from different countries and companies, from all over the world. As a meritocratic, and consensus-based community, the Qt Project welcomes anyone who shares interests to participate in these processes, meaning doing a contribution to Qt.

Introducing a new face for the Qt Project

For these reasons, it's straightforward to think of having a clear and central place, where new people interested in being part of the Qt project, could learn how to contribute. Additionally, for current members, having a good way of representing this contribution information will help to analyze these contributions for different Qt modules, and help the decision-making process to boost the development in some modules.

This information is already spread in many places, mainly in our wiki, which doesn't facilitate newcomers that don't know their way around to easily find, which raised the motivation of creating a one-page site which will play the role of being the face of the Qt project.

Screenshot_2021-04-12 The Qt Project

If you are familiar with Git, you could dive into the different Qt modules, and try to extract useful statistics from the different components, which has been done in the past from contributors, like Thiago Maceira's blog, so we got motivated to provide this in a more central place so it's intrinsic to the project.

With these ideas in mind, we are really happy to announce that we brought back, which will highlight all the previous commented key aspects of the project.

The idea is not to duplicate content from, but to focus mainly on: Project Contribution, and Project Statistics.

Technical details

Nowadays, the list of libraries and frameworks that provide API to build a data-based dashboard is extensive, so we decided to pick a simple language, and module to create something fast, thus we choose Dash, which is a simple module from Plotly, that enables us to create simple yet informative dashboards in many languages, from which we choose Python 🐍.

Being based in Flask, the deployment of a Dash application is quite straightforward, and since we had already some infrastructure to host Qt-related websites, it was a perfect match.

The text-based content that can see on the left-side elements, comes from local Markdown files in the repository.

The data used for all the plots come from the modules in the qt5.git meta-repository, plus the Qt Creator, and Qt for Python repositories, if you believe another repository should be included, remember to file a bug report 🙌.

Get involved

As most other important technical decisions, this initiative was publicly asked on the Qt Project's Development mailing list, where the overall reaction was in favor to move forward.

The repository is under our Open Governance model too, so you can find it under www/qtproject, where you can clone it and submit your patches.

We will use JIRA to handle all the related tasks and reports, under QTWEBSITE, particularly the component, so we ask for your help to improve the site.

We hope a new face for the Qt Project will help newcomers to join the community, so we can keep evolving the framework together.


Blog Topics: