GSoC/2025/Ideas

See also: GSoC Instructions, Last year ideas
Guidelines
Information for Students
These ideas were contributed by our developers and users. They are sometimes vague or incomplete. If you wish to submit a proposal based on these ideas, you are urged to contact the developers and find out more about the particular suggestion you're looking at.
Becoming accepted as a Google Summer of Code student is quite competitive. Accepted students typically have thoroughly researched the technologies of their proposed project and have been in frequent contact with potential mentors. Simply copying and pasting an idea here will not work. Neither generating a proposal with ChatGPT or equivalent! On the other hand, creating a completely new idea without first consulting potential mentors rarely works.
When writing your proposal or asking for help from the general KDE community don't assume people are familiar with the ideas here. KDE is really big!
If there is no specific contact given you can ask questions on the general KDE development list [email protected]. See the KDE mailing lists page for information on available mailing lists and how to subscribe.
Adding a Proposal
When adding an idea to this section, please include the following data:
- if the application is not widely known, a description of what it does and where its code lives
- a brief explanation (2-5 sentences)
- the expected size of the project (small-90 hours, medium-175 hours or large-350 hours)
- the expected results
- pre-requisites for working on your project (skills required/preferred)
- if applicable, links to more information or discussions
- mailing list or IRC channel for your application/library/module
- your name and email address for contact (if you're willing to be a mentor)
- if possible, an easy, medium or hard rating of the project
If you are not a developer but have a good idea for a proposal, get in contact with relevant developers first.
Project: Something that you're totally excited about
Brief explanation: Do you have an awesome idea you want to work on with KDE but that is not among the ideas below? That's cool. We love that! But please do us a favor: Get in touch with a mentor early on and make sure your project is realistic and within the scope of KDE. That will spare you and us a lot of frustration.
Expected results: Something you and KDE loves
Knowledge Prerequisite: Probably C++ and Qt but depends on your project
Duration: Mention one of ~90, ~175 or ~350 hours of effort necessary to finish the project. Use only one of these three project classes and don't come up with other numbers here.
Difficulty: Easy, medium or difficult project
Mentor: Try to see who in KDE is interested in what you want to work on and approach them. If you are unsure you can always ask in #kde-soc:kde.org on matrix.
Ideas
Merkuro
Project: Port account management to QML
Brief explanation: Currently Merkuro makes use of QtWidgets dialog for managing the type of resources (accounts), the goal is to port all (or at least a some) of the dialogs to QML
Expected results: Making Merkuro a step closer to be fully usable on mobile
Knowledge Prerequisite: QML and C++
Duration: ~350 hours, but we can discuss to reduce the scopes
Difficulty: Difficult
Mentor: Carl Schwan. Please contact me on #merkuro:kde.org (Matrix) and not via DM
KArchive
Project: Rewrite Zip backend to use libzip
Brief explanation: Currently karchive uses home grown code to handle zip files. The code is not very good since it gets confused when it finds token markers in what it is actual compressed data. See https://bugs.kde.org/show_bug.cgi?id=450597
Expected results: KArchive uses libzip for handling zip files (and there's no regressions)
Knowledge Prerequisite: C++
Duration: ~350 hours
Difficulty: Difficult
Mentor: Albert Astals Cid <[email protected]>
Misc
Project: Add more fuzzed libraries to oss-fuzz
Brief explanation: oss-fuzz is a SAS for fuzzying code. We have a few libraries there (karchive, kimagefomats, kcodecs), but we should add more since we have quite some code that processes file formats.
Expected results: As many projects/libraries as possible have been added to oss-fuzz
Knowledge Prerequisite: docker/compiling
Duration: ~350 hours
Difficulty: Medium
Mentor: Albert Astals Cid <[email protected]>