GSOC 2019 Project Ideas
From Joomla! Documentation

Welcome to the Joomla Google Summer of Code (GSoC) 2019 projects page.
If you are interested in participating as a student please review the materials on applying that are available at Google. We strongly encourage you to ask questions about process and projects on our joomla-gsoc mailing list and join our public Glip / RingCentral chat tool.
Note: The GSoC 2019 projects are displayed in no particular order)
Project I: Webservices in Joomla
Project Description
Continue the work done on implementing Web Services in Joomla 4 built during the two last years GSoC projects.
- Integrate existing web services stack with the existing MVC layer - so minimal error handling
- Continue the work on the entities layer in Joomla (basically a new MVC layer for Joomla that is more web services friendly and better error handling, and concept of relations etc.)
Knowledge Prerequisite
- PHP, object-orientated programming, ideally some experience with the Joomla MVC stack. Start by looking into the work done so far at https://github.com/joomla/joomla-cms/pull/23424
Difficulty
- Hard
Mentors
Project II: New frontend template: Page-builder
Project Description
Joomla is already in some ways a page builder in the way it builds its template (you set up a base page and add in dynamic numbers of modules and component). All you need to have is an index.php and a template.xml that can be rebuilt based on a GUI component in the backend.
Depending on the status of web services, it might be a com_ajax plugin and template.
This project is aimed at multiple students and multiple GSoC editions.
Knowledge Prerequisite
- PHP, HTML, VueJS, JavaScript
Difficulty
- Medium to hard
Mentors
Project III: Automatic installation of Joomla patch updates (Optional)
Project Description
Joomla has currently no auto-updater, which leads to outdated websites, and with this to security issues. The goal of the project is to implement an (optional) auto-updater for patch versions (for example 4.0.0 to 4.0.1).
Expected Results
- Auto-updater for Joomla 4
Knowledge Prerequisite
- Must have: PHP, curl
- Nice to have: libsodium, GPG, Joomla MVC
Difficulty
- Medium to Hard
Mentors
Project IV: Joomla SEO Improvements
Project Description
- CORE PART. Yoast style integration in core:
- OpenGraph Integration: http://ogp.me/
- Metadata Integration: Schema.org (Basic Editing)
- Custom title for articles (com_content)
- Ability to add Custom meta tags (like twitter:card)
- CORE SUPPORTED EXTENSION. Google Tools - See this article
- Basically Google Analytics integration and statistics
Knowledge Prerequisite
- Must have: PHP
- Nice to have: Joomla MVC, Search Engine Optimization (SEO), Analytics
Difficulty
- Medium
Mentors
Project V: Joomla 4 Feature Enhancements
Project Description
- Placing modules on a page (in the menu item form) is currently tedious. Ability to change the module menu assignment in the menu item (menu module assignment tab, currently read only).
- Add information of the selected menu item (like article title) to the menu overview list (expose=true in the menu default.xml for example). This way we wouldn't have to access the item each time to find out what's assigned to it. Make sure you only allow a single exposed item.
- Show Cookie Consent (Plugin)
Knowledge Prerequisite
- Must have: PHP, XML
- Nice to have: Joomla MVC
Difficulty
- Medium
Mentors
Project VI: Joomla 4 Accessibility
Project Description
The Joomla Project already invested a lot of work in making Joomla 4 the most accessible CMS out there. The goal of this project is improving this further.
Knowledge Prerequisite
- HTML, CSS, PHP, Accessibility
Difficulty
- Medium
Mentors
