Skip to main content

Welcome to Qt Academy

Learn or advance your Qt coding skills online for free

We believe that the future is built with Qt and that learning even the basics can enable people of all backgrounds to become more innovative by exploring the creation of apps, solutions, or other types of interfaces as a part of their studies, business – or even just for fun.

  Sign In  View Courses

Check Out the Latest Courses

 

  • 1h 5min
  • advanced
Inter-Process Communication with Qt

4.5(2)

Inter-Process Communication with Qt

This course is for anyone interested in learning about inter-process communication with Qt. To get the most out of this course, you should understand the basic software development concepts; experience with QtCore, covering QObject, signals and slots, QJson, QProcess, and threads is required. Note! The material is tested with Qt 5.15 and Qt 6. 

Learn more
  • 16h
  • basic
QML for Beginners

NaN(undefined)

QML for Beginners

The QML for Beginners Learning Path offers a comprehensive introduction to Qt Modeling Language (QML) and its associated modules and tools. This structured series guides you through fundamental QML concepts, with each course building upon knowledge gained in previous modules. Each course is paired with a hands-on coding challenge, allowing you to apply new skills in practical scenarios immediately. The path is designed for beginners with basic programming knowledge who want to develop applications with modern, responsive user interfaces. By completing this learning path, you will gain the skills to design, implement, and debug QML-based applications using industry best practices. During this learning path, you will: Explore the fundamentals of QML syntax, structure, and application development Create responsive user interfaces using Qt Quick and Qt Quick Controls Implement proper positioning and layouts for responsive designs Apply the Model-View-Delegate pattern for efficient data handling Adopt best practices for maintainable QML code Implement animations and transitions for enhanced user experience Develop debugging skills specific to QML applications Build complete, functional applications using the Qt framework

Learn more
  • 40min
  • basic
QML Debugging Basics with Qt Creator

4.9(14)

QML Debugging Basics with Qt Creator

Explore the debugging tools available in Qt Creator, learning how to diagnose, troubleshoot, and resolve issues in QML applications efficiently. Through a hands-on walkthrough, you will gain practical experience using breakpoints, inspecting the call stack, where to analyze QML properties by utilizing varying views in Qt Creator.   If you have some QML experience and want to familiarize yourself with debugging techniques to create stable and responsive Qt Quick applications, this is a good place to start.

Learn more

Most Popular Courses

  • 10min
  • basic
How to Install Qt

4.9(1685)

How to Install Qt

In this course, we'll install Qt using the Qt Online Installer.  This course is for anyone interested in using Qt who is at the beginning of their journey. It covers both commercial and open-source Qt installations.   This course was updated in October 2024 to continually improve course content and address feedback from the Qt Community.

Learn more
  • 20min
  • basic
Getting Started with Qt Creator

4.9(1308)

Getting Started with Qt Creator

In this course, you will launch the Qt Creator IDE for the first time, go through its basic views, and create a new project that you can use to try out some of the basic functionalities. This course is for anyone interested in writing software with Qt Creator. To get the most out of this course, you should have some development experience and understand the basic software development concepts. You don't need any previous knowledge of Qt. This course was updated in February 2025 to continually improve course content and address feedback from the Qt Community.    Change Log: Fixed links at end of the course Added zoom to videos so UI elements are easier to read Added additional links at end of course to topics identified in feedback

Learn more
  • 30min
  • basic
Getting Started with Qt Design Studio

4.9(605)

Getting Started with Qt Design Studio

Our course, Getting Started with Qt Design Studio, is the second module in our FYI Frontend Learning Track, Getting Started With UI Design. In it, you will learn about: What Design Studio is and why it is a powerful tool supporting the collaboration of designers and developers  How to launch the Qt Design Studio for the first time, go through its basic views, and create a new project that you can use to try out some of the basic functionalities

Learn more
OUR PURPOSE

To empower and encourage – students and tech-minded people alike. 

50k +

Edu Licenses

42k +

Course Enrollments

30k +

Qt Academy Users

Maximize Your Coding Potential

Learning Paths

Whether you're just starting out, or a seasoned pro, we're dedicated to providing you with a comprehensive learning experience that will elevate your skills as a Qt Developer or Designer. Learn the basic concepts of QML, Explore Qt Design Studio, or discover how Qt is used in specific industries; there is a learning path for you to explore. Our content library is constantly expanding, so you'll always have something new to discover.

Individual Courses

Are you looking to improve your skills as a Qt Developer? Our courses are the perfect way to focus on specific topics and elevate your expertise; we've got you covered. Find a course on a wide range of topics to help you get to grips with a new feature in Qt Design Studio, or learn a new workflow to kick-start your project!

Third-Party Courses

Would you like to explore the Qt community's insights on using Qt? Our fantastic array of third-party courses offers a wonderful opportunity to learn directly from community experts and discover how they make the most of Qt. Gain fresh perspectives on your journey to getting started, dive into unique workflows, or simply brush up on your skills! There’s an exciting course just waiting for you.

Stay in the Learning Loop with our Newsletter!

Be the first to hear about our latest course offerings, community events, and other Qt opportunities.

Mask group

How to Get Involved

There are many ways to get involved in Qt Academy – as a student, sponsor, or contributor.

  • For Students
  • For Partners
  • For Contributors

Enrollment in our general courses can be done anytime, anywhere. Simply create an account and pick the courses you want to study. Students with a valid educational email address from a verified university can also download Qt for free and use it for private purposes. Learn more about our educational licenses here.

Want to get involved as a partner, and co-create a learning track with us? We’re more than happy to work with you on a tailored learning path and competition. Simply get in touch with us and send a general inquiry to academy@qt.io

Want to become a teacher/contributor at Qt Academy? Have a great idea for a course or module, and the knowledge and skills to back it up? We’re always looking for people to contribute, so get in touch with us at academy@qt.io

Start Learning Qt Now!

Sign Up for Qt Academy

Need an Educational License?

Apply Here

Inter-Process Communication with Qt

Inter-Process Communication with Qt

  • 1h 5min
  • advanced
  • 4.5(2)
Start Course

Course description

This course is for anyone interested in learning about inter-process communication with Qt.

To get the most out of this course, you should understand the basic software development concepts; experience with QtCore, covering QObject, signals and slots, QJson, QProcess, and threads is required.

Note! The material is tested with Qt 5.15 and Qt 6. 

Objectives

 

This course is divided into 10 parts, covering inter-process communication with Qt. You will learn four different technologies for inter-process communication: Sockets, DBus, REST, and SOAP, and when to use each. In all of these, you will learn about the difference between asynchronous and synchronous APIs, and the effect it has on graphical applications. In the end, there's a knowledge check, where you can check what you learned.

 

***

 

This material was created and is the property of KDAB. It has been published on Qt Academy with their permission. KDAB is a globally recognized provider of software consulting, development, and training, specializing in embedded devices and complex cross-platform desktop applications. They provide deep expertise across the stack for projects using C++, Rust, Qt, QML/Qt Quick, OpenGL, Vulkan, Qt 3D, and more. KDAB experts regularly take time out to deliver world-class developer training, in-house or at open enrollment courses worldwide. You can contact them here.

Qt does not own the copyrights to this material, nor is it responsible for the content.

 

***

 

About the instructor:

The videos are presented by David Faure, who started with Qt back in 1998 in the KDE project, where he's still active. This gives him 27 years of experience with Qt. Since 2003, he has taught many Qt training courses on topics such as Qt Widgets, Multithreading, Modern C++, and Debugging/Profiling on Linux. He has made many contributions to QtCore and QtDBus and has helped numerous customers, especially with Qt multithreading issues.

 

QML for Beginners

QML for Beginners

  • 16h
  • basic
  • NaN(undefined)
Start Course

Course description

The QML for Beginners Learning Path offers a comprehensive introduction to Qt Modeling Language (QML) and its associated modules and tools. This structured series guides you through fundamental QML concepts, with each course building upon knowledge gained in previous modules.

Each course is paired with a hands-on coding challenge, allowing you to apply new skills in practical scenarios immediately. The path is designed for beginners with basic programming knowledge who want to develop applications with modern, responsive user interfaces. By completing this learning path, you will gain the skills to design, implement, and debug QML-based applications using industry best practices.

During this learning path, you will:

  • Explore the fundamentals of QML syntax, structure, and application development
  • Create responsive user interfaces using Qt Quick and Qt Quick Controls
  • Implement proper positioning and layouts for responsive designs
  • Apply the Model-View-Delegate pattern for efficient data handling
  • Adopt best practices for maintainable QML code
  • Implement animations and transitions for enhanced user experience
  • Develop debugging skills specific to QML applications
  • Build complete, functional applications using the Qt framework

Objectives

undefined
QML Debugging Basics with Qt Creator

QML Debugging Basics with Qt Creator

  • 40min
  • basic
  • 4.9(14)
Start Course

Course description

Explore the debugging tools available in Qt Creator, learning how to diagnose, troubleshoot, and resolve issues in QML applications efficiently. Through a hands-on walkthrough, you will gain practical experience using breakpoints, inspecting the call stack, where to analyze QML properties by utilizing varying views in Qt Creator.

 

If you have some QML experience and want to familiarize yourself with debugging techniques to create stable and responsive Qt Quick applications, this is a good place to start.

Objectives

In this course, you will learn:

  • How to set up and configure Qt Creator for debugging QML applications.
  • Techniques for identifying and fixing JavaScript and QML runtime errors.
  • How to set and manage breakpoints for effective step-by-step debugging.
  • Best practices for logging, inspecting object properties, and debugging bindings.
How to Install Qt

How to Install Qt

  • 10min
  • basic
  • 4.9(1685)
Start Course

Course description

In this course, we'll install Qt using the Qt Online Installer

This course is for anyone interested in using Qt who is at the beginning of their journey. It covers both commercial and open-source Qt installations.

 

This course was updated in October 2024 to continually improve course content and address feedback from the Qt Community.

Objectives

In this course, you'll learn how to install Qt to get started on your journey to learn Qt.

Getting Started with Qt Creator

Getting Started with Qt Creator

  • 20min
  • basic
  • 4.9(1308)
Start Course

Course description

In this course, you will launch the Qt Creator IDE for the first time, go through its basic views, and create a new project that you can use to try out some of the basic functionalities.

This course is for anyone interested in writing software with Qt Creator. To get the most out of this course, you should have some development experience and understand the basic software development concepts. You don't need any previous knowledge of Qt.


This course was updated in February 2025 to continually improve course content and address feedback from the Qt Community. 

 

Change Log:

  • Fixed links at end of the course
  • Added zoom to videos so UI elements are easier to read
  • Added additional links at end of course to topics identified in feedback

Objectives

In this course, you will … 

  • Launch Qt Creator IDE and explore its basic views
  • Create a new project to try out basic functionalities
Getting Started with Qt Design Studio

Getting Started with Qt Design Studio

  • 30min
  • basic
  • 4.9(605)
Start Course

Course description

Our course, Getting Started with Qt Design Studio, is the second module in our FYI Frontend Learning Track, Getting Started With UI Design.

In it, you will learn about:

  • What Design Studio is and why it is a powerful tool supporting the collaboration of designers and developers 
  • How to launch the Qt Design Studio for the first time, go through its basic views, and create a new project that you can use to try out some of the basic functionalities

Objectives

In this course, you will:

  • Learn what Design Studio is and why it is a powerful tool supporting the collaboration of designers and developers
  • Launch Qt Design Studio for the first time
  • Go through its basic views
  • Create a new project that you can use to try out some of the basic functionalities