Joomla Google Summer of Code 2019

Hi! My name is Rishabh Ranjan Jha. I am a 2nd year Computer Science UG student at National Institute of Technology Sikkim, India.
Welcome to my Blog post about the first coding phase of the GSoC Joomla project Cookie manager as well as my experience with it.

I am glad to participate in Google Summer of Code in the Joomla “Cookie Manager” project.
I am very new to Open Source. I have not worked with the large codebase before. I have been involved in the organization during the application review period, created and tested some PRs in the Joomla-CMS repository, so I have some knowledge of creating and testing PRs, but there will be a lot of things to learn.

Community Bonding Period

First day of the community bonding period begins with Admin and students interaction and discussing and learning about the organization as well as about the project.

The mentors for this project are Achilleas Papageorgiou, George Wilson, Luca Marzo.

In the community bonding period, we discussed the project in much more detail. We checked out already available solutions and discussed them. We create UI prototypes for this project.
In this period, I have learned git and Github for the project and learned about the various teams in the organization.
We had text meetings to discuss the project details and its implementations.

About the project

Joomla is a very popular CMS and it should respect the privacy of the users and it is also required by GDPR. This project deals with privacy to not track users without their consent. In this project, we have to make a cookie manager to manage website cookies.

It includes a component and a plugin. The main focus of this project is to block and unblock cookies on the user’s consents and it should be done on the client side.
Cookies list should be available to the user with categories.

The project is related to the user’s privacy and in the team we have Achilleas Papageorgiou who is expert in data privacy and protection. He shared so many resources related to this project.

Current state of the project

After the first coding phase we can
Add categories in the component, which will be shown in the frontend cookie banner.

 Add cookies, which will be shown in the frontend cookies list.

 We have three fields: cookie name, cookie description with its expiration period, in the cookie edit form.
Categorize cookies with its category.

Add cookie scripts in the component, used to block and unblock cookies.

We have three fields: position of the script, type of the script and code, along with its category, in the script edit form.

Show a cookie banner in the frontend.

Show a cookie preferences banner in the frontend.

Future Work

Have to implement cookie blocking and unblocking features.
Have to implement a Cookie Consent Informational Framework to store and identify actions.

People involved in this project
There are a lot more people involved in this project apart from project mentors namely, Benjamin Trenkle, Christiane Maier-Stadtherr, Niels Braczek, Philip Walton, Richard Fath, Shivam Rajput. Each of them helps on different aspects for this project all the way from ideas to the implementations along with code review.

My experience

It’s been my dream to develop softwares which can be used by millions of people and it's a dream come true for me. I am very happy to be a part of this wonderful organization.

I have chosen Joomla because I have an idea of what CMS is for. So it’s not a new subject for me but I haven’t used Joomla before, I have used Wordpress.
I have chosen the cookie manager project because in the first glance at the project ideas, without knowing anything about Joomla, I understood what this project demands. So I have chosen this project.

Thank you so much to all the people involved in this project. Without them it’s very difficult for me to complete the project.

Project Repository
Weekly reports of this project