Skip to content

KDE for Developers

For Developers Using KDE Applications.

Kate, the Feature-Packed Text Editor

Kate is packed with features that make it easier to view and edit all your text files. It lets you edit and view many files at the same time, both in tabs and split views, and comes with a wide variety of plugins, including an embedded terminal that lets you launch console commands directly from Kate, powerful search and replace plugins, and a preview plugin that can show you what your markdown, HTML and even SVG files will look like.

Kate tools

KDE Frameworks

KDE's Frameworks consist of over 80 add-on libraries to use in your Qt applications. For example, KWidgetsAddons includes many helpful and common widgets; KConfig provides configuration and state management; KCalendarCore and KContact provide easy-to-use .ics and vcard file parsers; Kirigami is a full toolkit for developing convergent user interfaces.

Learn more

Konsole

Konsole is KDE's terminal application. It provides tabs, split views, an ssh connection manager, a way to bookmark your favorite commands and servers, thumbnails for your files, Sixel support, and much more.

Konsole is also integrated into multiple other KDE Applications, making it your constant companion. For example, KDevelop, Kate, Yakuake, and Dolphin all use Konsole as an integrated terminal emulator.

Yakuake

Yakuake

Konsole but as a dropdown terminal, accessible from anywhere with a quick press of the F12 key

Clazy

Clazy is a Clang compiler plugin to ensure that your Qt application follows industry-standard best practices.

[26/58] Building CXX object src/CMakeFiles/myapp.dir/global.cpp.o
src/global.cpp:18:88: warning: Use multi-arg instead [-Wclazy-qstring-arg]
    : m_config(KSharedConfig::openConfig(QStringLiteral("%1/%2")
    .arg(m_configFolderName).arg(m_configFileName)))

[34/58] Building CXX object src/CMakeFiles/myapp.dir/models/subtitlesfoldersmodel.cpp.o
src/myapp/src/models/subtitlesfoldersmodel.cpp:52:23:
warning: Use an empty QLatin1String instead of an empty QStringLiteral [-Wclazy-empty-qstringliteral]
    newList.removeAll(QStringLiteral(""));

2 warnings generated.

KDevelop

A cross-platform IDE for C, C++, Python, QML/JavaScript and PHP

KDevelop is a fully-featured Integrated Development Environment, perfect for C and C++ projects and other supported languages. It has great code completion and project support, along with documentation integration that keeps you close to where you're editing code.

empty laptop with an overlay
Screenshot of kdevelop

Profile your application

Use Heaptrack to profile your Linux application's memory allocation to find hotspots and memory leaks.

Flame graph of memory allocation

And use ELF Dissector to investigate load time performance bottlenecks and profile the size of your Linux executables.

Elf Dissector

Other open source applications for you

Here are some other open source applications from our partners to complement your workflow. Most of them are using KDE Frameworks internally.

And check out our other development-related applications.