The Qt Project

The Qt Project

Qt (:speaking_head: /kjut/ ) is a Cross-platform C++ framework, to create Graphical User Interfaces mainly but offering ways to access other features in a seamlessly way, like serialization files, databases, plotting, 3D components, command line, testing, etc.


Qt is mainly written in C++ (currently C++11), but it has been extended with new technologies and languages like QML, and Python.

Who uses Qt?

If you are familiar with Linux, maybe you heard of KDE (desktop), VLC (media player), VirtualBox, Telegram Desktop, among others.

Industry-wise, Qt is used in the VFX industry :clapper: (Maya), smart TVs :tv: (LG’s WebOS), medical :hospital: and automotive :oncoming_automobile: (Mercedez, BMW, Jaguar, etc), and also in microcontrollers devices :control_knobs:.

Since Qt is one of the best solutions for a cross-platform UI framework, it has been in use since the '90s for many research organizations (ESA, ESO, NASA, CERN, etc) and also as the base for internal tools of many companies, so it’s probable that you have seen or use Qt applications without knowing what it was.

Code of conduct

Read it on the QUIP-0012.


The Qt Project governs the open source development of Qt. It allows anybody wanting to contribute to join the effort, through a meritocratic structure of approvers and maintainers.

How to contribute

Such a large framework could seem overwhelming at first, but contributions can be done on a small scale too:

:warning: Please be aware

Qt development happens outside Github, on a self-hosted Gerrit instance, so the contributions cannot be done via Github, but, since there are currently mirrors, we can help you submit a patch to Github (to participate in Hacktoberfest) and also to Gerrit.

In a nutshell, you need to follow these instructions:

  1. Create a Qt account,
  2. Register on gerrit with that account,
  3. Sign the CLA in Gerrit (Contributor’s agreement),
  4. Add your SSH-key to Gerrit,
  5. Configure your .ssh/config:
        Port 29418
        # this is your Gerrit username, not email, and not your PC's username. You can view  this from Settings in gerrit when logged in.
        User yourgerritusername
        PreferredAuthentications publickey
        IdentityFile ~/.ssh/id_rsa


You can reach Qt developers on IRC (Freenode) on the #qt-labs and #qt-pyside channels.
Additionally, you can contact me if you have any question.