SoK Final Report – Theme Designing for Pairs

Theme designing for pairs is my Season of KDE project, mentored by Heena Mahour. In this project i created new themes for KDE-Edu project “Game Pairs”. In SoK period I created the following themes:

Here are some screen shots of these themes in Pairs:

Fruits Theme

Fruits Theme

Vegetable Theme

Vegetable Theme

Nature Theme

Nature Theme

Stationery Theme

Stationery Theme

Leaf Structures Theme

Leaf Structures Theme

These themes will work in following game modes in “Pairs”

  • Pairs
  • Relations
  • Logic
  • Words

The most challenging part of my project is to first build and run the program. It took some time and help from KDE community to figure out issues regarding my configuration and have “Pairs” up and running in my machine.

Next step was to understand how a new theme should be added by going through the project. My mentor allowed me to do this myself rather than stating out the ways of how to do it. Adding a theme is not only about creating images and add them. It is about connecting these images to the program as well. In “Pairs” a theme is consist of set of images and a “.game” file. The “.game” file is written in xml and contain information about the images. Following is the step by step process to create and have your theme running in “Pairs”:

  1. Download KDE Pairs
  2. Extract and follow the steps in README to  build the program
  3. Run “Pairs” (After you have built and install “Pairs” you can run it by simply typing “pairs” in the terminal)
  4. When you have “Pairs” up and running, you can start creating svg images. (To create svg images, you can use software like inkscape)
  5. Create a folder in the “themes” folder in “Pairs” and add the svg images to that folder.
  6. Create a xml file “your_theme.game” and edit it following a .game file of a previous theme.
  7. Update the CMakeLists.txt file and add the following line “create_theme(your_theme)”
  8. Built and run pairs again and you will see your theme with other themes.

Another task of my project is improving documentation in KDE pairs. The user documentation for “https://userbase.kde.org/Pairs“. I even created a techbase wiki page for pairs such that other contributors can contribute to the documentation of pairs in technical side.

A very big thank you should go to my mentor Heena Mahour without whom this project will never be successful. Further more, I would like to thank KDE community who helped me through mailing list when I have issues regarding the project. Last but not least I would like to thank to the KDE SoK organizers for providing this amazing experience. I am looking forward to contribute to KDE even after this is finished.

Theme “Leaves” added to “KDE – Pairs”

“Leaves” is the newest theme I created for KDE-Pairs as a part of my ongoing project ‘Theme Designing of Pairs’. This is done under the guidance of my mentor “Heena Mahour” who initially gave the idea about leaf structures. This will only work in 3 game modes namely, pairs, relations and logic.  You can download the theme from here.

pairs-leaves-pairs pairs-leaves-logic pairs-leaves-relation

Theme ‘Stationery’ added to ‘KDE – Pairs’

As a part of my ongoing project “Adding new themes for KDE Pairs game”, a new theme ‘Stationery’ is added. The motivation behind selecting the particular theme lies on its simplicity. Stationery objects are very much familiar with pre-school children rather than other objects. Hence these stationery items can be used in the ‘Pairs’ game to develop their logical skills, rather than worrying about their familiarity with the domain.

The stationery objects I have used for this are; book, pen, pencil, paint brush, paint tube, ruler and scissor. The theme can associate four of the six game modes. They are pairs, relations, logic and words. Few screen shots of the theme will be as follows;

In 'Pairs' game mode

In ‘Pairs’ game mode

In 'Logic' game mode

In ‘Logic’ game mode

In 'Relation' game mode

In ‘Relation’ game mode

In 'Words' game mode

In ‘Words’ game mode

This theme can be downloaded from here.

More Themes Added

After adding the first theme, I was working on a theme on nature. That theme represents the basic elements in the nature such as trees, flowers and etc. Since KDE Pairs is developed for pre school children the objects represented in the themes should be familiar and educational to them. Following are some screen shots after adding the theme nature to the game. These screenshots represents the different game modes such as logic, pairs, relations and words.

Theme Nature nature-pairs nature-relations nature-words

After drawing the elements of this I started drawing for another theme which is very similar to my previous theme (Fruits). That is vegetables.

Building and Running KDE Pairs

As I have earlier mentioned in my previous blog post, I have started my project “Theme Designing for Pairs” for Season of KDE. My first task is to build pairs and run it in my local machine. I have previously downloaded the executable and played with it a little bit. Therefore I uninstall it and cloned the repository using the following command.

git clone git://anongit.kde.org/pairs

For the instructions on how to build the project I have followed the README file in the project. It gives a clear set of instructions  on how to build Pairs in different platforms.

After successfully built the project you may be able to run it by typing “pairs” in the terminal. Unfortunately after successfully built it, I was not able to run it. It has been a blocker in my project for a long time. I tried various things but at the end none of them worked. Therefore, I asked my question in the mailing list and there I was able to find out the reason why it is not working in my machine.

I have to set the KDEDIRS directory to root, where my KDE is installed. After setting that variable I was able to run “Pairs” without no other change.

Now I have pairs up and running , I can continue with the rest of my tasks.


Season of KDE

Season of KDE is an outreach program hosted by KDE community. It is a similar program like “Google Summer of Code”. The current round of Season of Code started in October and hope to go until January.

I am selected for Season of KDE with the project “Theme Designing for Pairs”. My mentor is Heena Mahour. Pairs is a KDE educational project focused on preschool children. It helps stimulating memory and logic skills of children. My project will cover the following aspects of “Pairs”.

  • Creating and adding new themes
  • Improve documentation
  • Re factor code base

When I found about SoK, I was looking for opportunities to contribute to open source community. My skills in creativity, technical documentation will help me to achieve the expected results very easily.