GSoC/2020/StatusReports/AnujBansal

From KDE Community Wiki

Project Overview

KDE has a vast web infrastructure. Some KDE websites have not been upgraded in a long time and use dated technologies.

The first part of this project involves porting KDE's main website kde.org to Hugo - A Go based static site generator. This would allow for ease of development, faster load times and more security.

KDE websites also currently use OpenLDAP and a PHP application to authenticate and manage users (identity.kde.org). OpenLDAP is an old and complex method of authenticating and managing user identity and several modern approaches are available. Moreover many services do not support OpenLDAP authentication (Eg. discourse). One of the newer approaches is to use OAuth2. OAuth2 is a modern approach to authentication and fixes the various issues with LDAP. So, the project also involves migrating season.kde.org to OAuth and giving it a much needed visual overhaul at the same time.

Work Report

Community Bonding

I spent the community bonding period exploring groups and projects within the community. I also familiarised myself more with the technologies I was going to work with. The rest of the community bonding period I worked on fixing some bugs on MyKDE - KDE's new identity system.

Week 1

  1. Ported announcements upto KDE 4.0
  2. Added support for translations
  3. Some minor layout changes
  4. Added hugo shortcode to supporting including files in markdown

Week 2 & 3

  1. Ported announcements upto 2012
  2. Maintained responsiveness of site
  3. Replaced html with hugo shortcodes where possible (youtube iframe)
  4. Cleaned up code

Week 4 & 5

  1. Automated majority of the conversion using regex
  2. Finished porting the announcements

Week 6, 7 & 8

  1. Finalised the hugo port for kde.org
  2. Removed a lot of redundant code
  3. Update pages that were changed recently
  4. Setup Season of KDE Website Project
  5. Discuss some UI Improvements with #kde-www

Week 9, 10, 11 & 12

  1. UI updates to Season of KDE
  2. Added the ability to view accepted projects from each year
  3. Added a page for each project
  4. Added support for markdown editor to edit proposals
  5. Added the ability to comment on proposals
  6. Added functionality to generate certificates

Work Left

The only work left is to test both the websites. The hugo port has been deployed to KDE's staging area for testing.

Link to Blog posts

  1. Community Bonding
  2. Part 1
  3. Part 2
  4. Part 3

Link to branches

About Me

Name: Anuj Bansal

Mentors: Carl Schwan, Niccolò Venerandi and Alexander Saoutkin

Invent: invent.kde.org/anujbansal

IRC Nick & Telegram: anuj63