The KDE Frameworks
The KDE Frameworks build on the Qt framework, providing everything from simple utility classes (such as those in KCoreAddons) to integrated solutions for common requirements of desktop applications (such as KNewStuff, for fetching downloadable add-on content in an application, or the powerful KIO multi-protocol file access framework).
The KDE Frameworks can be used in CMake-based and QMake-based projects, and most of them are portable to at least Windows, Mac and Linux. The documentation of each framework has code snippets that show how to include the framework in a QMake or CMake project.
The frameworks are divided into four tiers, based on the kind of dependencies that they have. For instance, Tier 1 frameworks depend on Qt and possibly some third-party libraries, but not on other frameworks. This makes them easy to integrate into existing applications.
List of the libraries
Tier 1
Tier 1 frameworks depend only on Qt (and possibly a small number of other third-party libraries), so can easily be used by any Qt-based project.
Framework | Maintainer | Type |
---|---|---|
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
Attica
|
The KDE Community | functional |
![]() ![]() |
David Rosca | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
BreezeIcons
|
The KDE Community | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
ECM
|
Stephen Kelly | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KApiDox
|
Jan Blackquill, Carl Schwan |
functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KArchive
|
David Faure | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KCalendarCore
|
Allen Winter | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KCGroups
|
Henri Chain | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KCodecs
|
The KDE Community | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KConfig
|
Matthew Dawson | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KCoreAddons
|
Michael Pyne | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KDBusAddons
|
David Faure | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KDNSSD
|
Matthew Dawson | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KGuiAddons
|
The KDE Community | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KHolidays
|
Allen Winter | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KI18n
|
Chusslove Illich | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KIdleTime
|
The KDE Community | functional |
![]() ![]() |
Marco Martin | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KItemModels
|
David Faure | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KItemViews
|
David Edmundson | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KPlotting
|
The KDE Community | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KQuickCharts
|
Arjen Hiemstra | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KSyntaxHighlighting
|
Volker Krause | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KUserFeedback
|
Volker Krause | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KWayland
|
Martin Flöser | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KWidgetsAddons
|
The KDE Community | functional |
![]() ![]() |
The KDE Community | integration |
![]() ![]() |
Jan Grulich, Lamarque Souza, Lukáš Tinkl |
integration |
![]() ![]() |
Jan Grulich, Lamarque Souza, Lukáš Tinkl |
integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
Oxygen-icons
|
Andreas Kainz | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
Prison
|
The KDE Community | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
QQC2-Desktop-Style
|
Marco Martin | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
Solid
|
The KDE Community | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
Sonnet
|
Martin Tobias Holmedahl Sandsmark | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
ThreadWeaver
|
Mirko Boehm | functional |
Tier 2
Tier 2 frameworks additionally depend on tier 1 frameworks, but still have easily manageable dependencies.
Framework | Maintainer | Type |
---|---|---|
![]() ![]() |
Ivan Čukić | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KAuth
|
David Edmundson | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KCompletion
|
David Gil Oliva | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KContacts
|
Laurent Montel | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KCrash
|
David Faure | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KDocTools
|
Luigi Toscano | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KFileMetaData
|
Stefan Brüns | integration |
![]() ![]() |
Alex Merry | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
Kirigami-addons
|
David Edmundson | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KJobWidgets
|
The KDE Community | functional |
![]() ![]() |
Kai Uwe Broulik | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KPackage
|
Marco Martin | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KPeople
|
Aleix Pol Gonzalez | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KPty
|
The KDE Community | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KUnitConversion
|
John Layt | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
Syndication
|
Frank Osterfeld | functional |
Tier 3
Tier 3 frameworks are generally more powerful, comprehensive packages, and consequently have more complex dependencies.
Framework | Maintainer | Type |
---|---|---|
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
Baloo
|
The KDE Community | solution |
![]() ![]() |
Ivan Čukić | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KBookmarks
|
The KDE Community | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KCMUtils
|
The KDE Community | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KConfigWidgets
|
The KDE Community | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KDAV
|
The KDE Community | functional |
![]() ![]() |
Marco Martin | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KDED
|
David Faure | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KDESu
|
The KDE Community | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KEmoticons
|
The KDE Community | functional |
![]() ![]() |
The KDE Community | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KIconThemes
|
The KDE Community | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KInit
|
David Faure | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KIO
|
David Faure | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KNewStuff
|
Dan Leinir Turthra Jensen | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KNotifyConfig
|
David Edmundson | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KParts
|
David Faure | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KRunner
|
Alexander Lohnau | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KService
|
David Faure | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KTextEditor
|
Christoph Cullmann | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KTextWidgets
|
Laurent Montel | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KWallet
|
Valentin Rusu | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KXmlGui
|
David Faure | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
Plasma
|
Marco Martin | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
Purpose
|
Aleix Pol Gonzalez | integration |
Tier 4
Tier 4 frameworks can be mostly ignored by application programmers; this tier consists of plugins acting behind the scenes to provide additional functionality or platform integration to existing frameworks (including Qt).
Framework | Maintainer | Type |
---|---|---|
![]() ![]() |
Àlex Fiestas | integration |
Porting Aids
Porting Aids frameworks provide code and utilities to ease the transition from kdelibs 4 to KDE Frameworks 5. Code should aim to port away from this framework, new projects should avoid using these libraries.
Framework | Maintainer | Type |
---|---|---|
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KDELibs4Support
|
The KDE Community | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KDesignerPlugin
|
Alex Merry | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KDEWebKit
|
The KDE Community | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KHtml
|
Martin Tobias Holmedahl Sandsmark | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KJS
|
Bernd Buschinski | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KJsEmbed
|
Bernd Buschinski | functional |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KMediaPlayer
|
Alex Merry | integration |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
Kross
|
The KDE Community | solution |
![]() ![]()
Android
FreeBSD
Linux
Windows
iOS
macOS
KXmlRpcClient
|
Daniel Vrátil | functional |