- 1 Guidelines
- 2 Ideas
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 may wish to contact the developers and find out more about the particular suggestion you're looking at.
Being 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. On the other hand, creating a completely new idea without first consulting potential mentors is unlikely to work out.
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@example.com. 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 try to 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
- the expected results
- pre-requisites for working on your project
- 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 you are not a developer but have a good idea for a proposal, get in contact with relevant developers first.
Project: Add ConnectionManager bindings to TpQt
Brief explanation: KDE Telepathy, the IM client, uses the backend library TelepathyQt to power everything. We have library bindings for writing instant messaging clients in Qt, but not the backend connection manager to write protocols in TpQt. This has been started, but a lot of work is needed to make this finished. This will be a project in collaboration with the Telepathy project upstream at freedesktop.org.
Expected results: At the end of the summer we should have a completely working library for writing connection managers, with full unit tests.
Knowledge Prerequisite: Qt, C++ library design, unit testing, ideally usage of TelepathyQt already.
Project: Collaborative text editor powered by Telepathy Tubes
Brief explanation: With Telepathy we can set up P2P DBus session between two contacts without the difficulty of servers and firewalls and low level TCP details. It would be great to use this to create a collaborative text editor that can be used for writing documents, or code.
What I expect to see in your proposal: Knowledge of collaborative text editors, and the main difficulty analysed. I expect to see what libraries you can re-use and a detailed list of what needs to be created.
Expected results: A working telepathy powered collaborative real-time text editor.
Knowledge Prerequisite: Qt, C++, Dbus, Telepathy
Project: Finish KTp-Active
Brief explanation: KTp Active is our touch screen version of KDE Telepathy primarily for Plasma Active touch devices. It was started, but needs a lot to be release-able. Please read https://projects.kde.org/projects/playground/network/telepathy/ktp-active) and (http://www.blog.mentero.net/kde/ktp-active/bringing-ktp-active-to-life/
What I expect to see in your proposal: Knowledge of the current state of ktp-active, and a list of everything that doesn't work, and a plan of what needs doing
Expected results: A working tablet IM client that we can release as part of Plasma Active
Knowledge Prerequisite: Qt, C++, advanced QML
Project: Marble meets owncloud
Brief explanation: Marble wants to be your swiss army knife for maps, owncloud brings your data under your control. Let's marry the two and bring cloud storage advantages to Marble without the usual loss of control: Enable Marble to store important data in owncloud and make it accessible (sync) to all Marble versions running on your desktop, laptop, smartphone.
- Marble: Sync bookmarks (and routing targets) with owncloud
- Marble: Save routes to owncloud, load routes from owncloud
- owncloud: View Marble bookmarks and routes on top of leaflet
- owncloud: Manage bookmarks and routes (view as list, delete)
And some possible extensions:
- workout mode: save tracks from jogging and other activities to owncloud
- track sharing: record your favorite bike, motorcycle, hike track along with pictures from your smartphone and share via kml and owncloud
Mentor: earthwings at gentoo dot org