[Kde-pim] draft proposal

Heena Mahour heena393 at gmail.com
Wed Apr 3 16:33:14 BST 2013


Hey Kevin,
Please give suggestion and could you please elaborate which plasmoids(apart
from notes sharing using akonadi) are to be created for this project?
==========
*GSoC'13 Project Proposal*


*Name:   *         Heena Mahour
*Email:*            heena393 at gmail.com
*IRC nick*:        stack3457
*Location: *       New Delhi, India.


*Prposal Title:* * Plasma Workspace Integration for Akonadi*

*Motivation fr proposal:*

Plasma Workspace is very well designed to accommodate various panels,
widgets, etc. on the desktop and has seen many changes since KDE 4.1 in the
plasma design and architecture. Its developer friendly code-base allows
various programmers to easily create custom plasmoids which can be
distributed as a small bundle and be easily integrated into the plasma
workspace.

With introduction of Qt Quick/QML in Qt 4.7, the gap between the developers
and UI designers got narrowed down with its rich set of QML elements and
intuitive declarative QML language. QML allows designers to create fluid
like animated UIs very quickly. And most importantly, the animations happen
without the slightest glitch. The Javascript/C++ bundle efficiently handles
all the back-end implementation, leaving the designers to concentrate on
the animations and UI simplicity.

The aim of this project is to have multiple working Plasma Workspace
integration bits and pieces This idea is about working and completing
several smaller items for workspace integration
A great advantage by it  it is reduce the code maintenance effort for the
KDE community. The plasmoids written in QML (for eg to store data in
Akonadi) will have considerably less code as QML allows the creation of
fluid UIs in a powerful declarative way.

I’ve been using Linux for quite a long time, but I just became a KDE user
in the beginning of the last year when I participated in season of kde
2012.My enthusiasm towards KDE initially led me to learning Qt (which I
grasped very quickly) and made a lot of small applications with it (like a
kde plasmoid [1])for some experience. I have already been a fan of the KDE
Plasma amongst other KDE features, and this project is the bull's eye
towards my interest. I see a perfect opportunity to develop some real life
desktop user interface with the latest technology of QtQuick through this
project.

*Implementation plan:*

Initially the steps were chosen for this project:
1)KDE currently has multiple notes plasmoids to store user notes. The best
looking plasmoid is currently the one that plasma ships, but it does not
use akonadi to store notes. It would be better to have one plasmoid which
looks awesome and stores data in Akonadi and retiring other plasmoids.
2)?? (Please suggest)

 The above mentioned plasmoid will be transformed to either QML/Javascript
or QML /C++ in this project.

*Tentative Timeline:*

May 1 onwards : Read plasma code and get familiar with the current
plasma/plasmoids code and the plasma library.
May 13 - May 26 : Practice painting the widets in qml . Probably write one
or two practice plasmoids to get a first hand feel of how they're made.
May 26 - June 9: Start with the actual re-factoring of the plasmoids into
QML/C++ or QML/Javascript (whichever is most suitable). I plan to invest
one-two weeks with the first two-three plasmoids .
June 10 -June 30 :Remaining widgets  may be covered within this week each.
July 1- July 7: Testing each plasmoid  and when it undergoes the
re-factoring.
July 8 -July 14 :Do the final adjustment ,fix bugs .
July 15 onwards : work on documentation


*About Me:*

I'm a second year engineering student, pursuing B.Tech. in Computer
engineering(COE) from Delhi Technological University(Formerly Delhi College
of Engineering),New Delhi,India.

I’ve been using Linux for quite a long time, but I just became a KDE user
in the beginning of the last year when I participated in season of kde
2012[3].In*Season of KDE 2012*, I worked on Kde-edu game 'pairs' where I
have done the following  :-
> Developed layout for the editor of the game pairs.
> Developed themes for the game –pairs
> Learned the basics of the project building & concept of make files .
 Mentor:*Marco Calignano.*
 Status : Complete and my themes are also available as add-on at
 kde-look.org <http://kde-files.org/index.php?xcontentmode=647>.
KDE is the project I've been most familiar to and interested in, as I see
most of cutting edge technologies wrapped up in KDE, and of course, I love
the awesome community commitment and dedication towards the same.

I've been following few mailing lists and the development in trunk since
half an year. I have contributed to kde by providing pastebin
scripts,various themes for kde-game -pairs and a plasmoid shuffle [4][1] to
get a hold of KDE code-base and the development process of KDE.

Besides,I have also tried to implement a tic tace toe game using qml [5]
and a text editor [6].Apart from these,I love blogging and I have blogged
about my projects at blogspot [7]

Besides coding, I love painting,music and exploring new open source
technologies.


*Links:*

[1] http://kde-look.org/content/show.php/shuffle?content=156491
[2] http://community.kde.org/Plasma/QMLPorting#Porting_Plasmoids_to_QML
[3] http://community.kde.org/GSoC/2012/StatusReports#Heena
[4]http://kde-look.org/usermanager/search.php?username=heena&action=profile
[5]
http://sourceforge.net/p/virtualk/code/ci/1e774cae13ee04d1b93bd31066fd3ba0ed9475bf/tree/tic-tac-toe/
[6]
http://sourceforge.net/p/virtualk/code/ci/1e774cae13ee04d1b93bd31066fd3ba0ed9475bf/tree/texteditor_1/
<http://sourceforge.net/p/virtualk/code/ci/1e774cae13ee04d1b93bd31066fd3ba0ed9475bf/tree/texteditor_1/>
[7] http://www.heenamahour.blogspot.in/

-- 
-Heena
Season of kde'12 participant
Delhi College of Engineering(COE),India
http://about.me/heena.mahour
http://heenamahour.blogspot.in
_______________________________________________
KDE PIM mailing list kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/



More information about the kde-pim mailing list