<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://docs.sandbox.joomla.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Yvesh</id>
	<title>Joomla! Documentation - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://docs.sandbox.joomla.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Yvesh"/>
	<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/Special:Contributions/Yvesh"/>
	<updated>2026-05-15T16:28:22Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=595821</id>
		<title>GSOC 2019 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=595821"/>
		<updated>2019-03-07T21:49:17Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Reverted edits by Yvesh (talk) to last revision by Wilsonge&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Top portal heading|color=white-bkgd|text-color=#333|title=&lt;br /&gt;
Welcome to Joomla GSoC 2019 Projects Page }}&lt;br /&gt;
[[Image:Gsoc2016.png|150px|center|link=GSoC 2019]]&lt;br /&gt;
&lt;br /&gt;
{{tip|title=The application for students is going to open soon!}} &lt;br /&gt;
&lt;br /&gt;
Welcome to the [[GSoC_2019|Joomla Google Summer of Code (GSoC) 2019]] projects page. &lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google]. We strongly encourage you to ask questions about process and projects on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list] and join our &lt;br /&gt;
[https://glip.com/joomla public Glip / Ringcentral chat tool].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Note: The GSoC 2019 projects are displayed in no particular order&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Project I: Webservices in Joomla ==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
Continue the work done on implementing Web Services in Joomla 4, which has been successfully started during the two last years GSoC projects.&lt;br /&gt;
# Integrate existing web services stack with the existing MVC layer - so minimal error handling&lt;br /&gt;
# 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.). The existing work can be found at https://github.com/joomla-framework/entities&lt;br /&gt;
   &lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*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&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:george.wilson@community.joomla.org George Wilson] (main mentor)&lt;br /&gt;
*[mailto:isacandrei19@gmail.com Andrei Isac]&lt;br /&gt;
&lt;br /&gt;
==Project II: New frontend template: Page-builder==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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). This project aims to bring this one step further. The page builder template rebuilds the index.php and the template.xml in a GUI component in the backend of the template.&amp;lt;br /&amp;gt;&lt;br /&gt;
Depending on the status of web services, it might be a com_ajax plugin and template. &amp;lt;br /&amp;gt;&lt;br /&gt;
This project is aimed at multiple students and multiple GSoC editions and one of the long term projects of Joomla.&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*PHP, HTML, VueJS, JavaScript&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium to hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
* [mailto:benjamin.trenkle@community.joomla.org Benjamin Trenkle] (main mentor)&lt;br /&gt;
* [mailto:vivianamenzel@gmail.com Viviana Menzel]&lt;br /&gt;
* [mailto:harald.leithner@community.joomla.org Harald Leithner]&lt;br /&gt;
&lt;br /&gt;
==Project III: Joomla SEO Improvements==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
*&#039;&#039;&#039;CORE PART.&#039;&#039;&#039; Yoast style integration in core:&lt;br /&gt;
**OpenGraph Integration: http://ogp.me/&lt;br /&gt;
**Metadata Integration: Schema.org (Basic Editing)&lt;br /&gt;
**Custom title for articles (com_content)&lt;br /&gt;
**Ability to add Custom meta tags (like twitter:card)&lt;br /&gt;
*&#039;&#039;&#039;CORE SUPPORTED EXTENSION.&#039;&#039;&#039; Google Tools - See [https://www.searchenginejournal.com/google-introduces-wordpress-plugin-with-integrated-analytics-search-console-more/282385/ this article]&lt;br /&gt;
* Basically Google Analytics integration and statistics&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have:&#039;&#039; PHP&lt;br /&gt;
*&#039;&#039;Nice to have:&#039;&#039; Joomla MVC, Search Engine Optimization (SEO), Analytics&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:christopher.wagner@community.joomla.org Christopher Wagner]&lt;br /&gt;
*[mailto:rowan.hoskyns-abrahall@community.joomla.org Rowan Hoskyns Abrahall]&lt;br /&gt;
*[mailto:tony@xws.im Tony Partridge]&lt;br /&gt;
&lt;br /&gt;
==Project IV: Joomla 4 Feature Enhancements==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
# 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).&lt;br /&gt;
# Add information of the selected menu item (like article title) to the menu overview list (&amp;lt;tt&amp;gt;expose=true&amp;lt;/tt&amp;gt; in the menu default.xml for example). This way we wouldn&#039;t have to access the item each time to find out what&#039;s assigned to it. Make sure you only allow a single exposed item.&lt;br /&gt;
# Show Cookie Consent (Plugin)&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have&#039;&#039;: PHP, XML&lt;br /&gt;
*&#039;&#039;Nice to have&#039;&#039;: Joomla MVC&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
* [mailto:yves.hoppe@community.joomla.org Yves Hoppe]&lt;br /&gt;
* [mailto:luca.marzo@community.joomla.org Luca Marzo]&lt;br /&gt;
* [mailto:nicolagalgano@yahoo.it Nicol Galgano]&lt;br /&gt;
&lt;br /&gt;
==Project V: Joomla 4 Accessibility ==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*HTML, CSS, PHP, Accessibility, Javascript&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
* [mailto:kontakt@chmst.de Christiane Maier-Stadtherr] (main mentor)&lt;br /&gt;
* [mailto:astrid.guenther@community.joomla.org Astrid Günther]&lt;br /&gt;
* [mailto:l.jardin@djumla.de Lukas Jardin]&lt;br /&gt;
&lt;br /&gt;
====External Consultant====&lt;br /&gt;
* [mailto:s.wajda@joomla.pl Stefan Wadja] &lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=595820</id>
		<title>GSOC 2019 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=595820"/>
		<updated>2019-03-07T21:47:45Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Reverted edits by Wilsonge (talk) to last revision by Puneet.0191&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Top portal heading|color=white-bkgd|text-color=#333|title=&lt;br /&gt;
Welcome to Joomla GSoC 2019 Projects Page }}&lt;br /&gt;
[[Image:Gsoc2016.png|150px|center|link=GSoC 2019]]&lt;br /&gt;
&lt;br /&gt;
{{tip|title=The application for students is going to open soon!}} &lt;br /&gt;
&lt;br /&gt;
Welcome to the [[GSoC_2019|Joomla Google Summer of Code (GSoC) 2019]] projects page. &lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google]. We strongly encourage you to ask questions about process and projects on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list] and join our &lt;br /&gt;
[https://glip.com/joomla public Glip / Ringcentral chat tool].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Note: The GSoC 2019 projects are displayed in no particular order&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Project I: Webservices in Joomla ==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
Continue the work done on implementing Web Services in Joomla 4, which has been successfully started during the two last years GSoC projects.&lt;br /&gt;
# Integrate existing web services stack with the existing MVC layer - so minimal error handling&lt;br /&gt;
# 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.)&lt;br /&gt;
   &lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*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&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:george.wilson@community.joomla.org George Wilson] (main mentor)&lt;br /&gt;
*[mailto:isacandrei19@gmail.com Andrei Isac]&lt;br /&gt;
&lt;br /&gt;
==Project II: New frontend template: Page-builder==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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). This project aims to bring this one step further. The page builder template rebuilds the index.php and the template.xml in a GUI component in the backend of the template.&amp;lt;br /&amp;gt;&lt;br /&gt;
Depending on the status of web services, it might be a com_ajax plugin and template. &amp;lt;br /&amp;gt;&lt;br /&gt;
This project is aimed at multiple students and multiple GSoC editions and one of the long term projects of Joomla.&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*PHP, HTML, VueJS, JavaScript&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium to hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
* [mailto:benjamin.trenkle@community.joomla.org Benjamin Trenkle] (main mentor)&lt;br /&gt;
* [mailto:vivianamenzel@gmail.com Viviana Menzel]&lt;br /&gt;
* [mailto:harald.leithner@community.joomla.org Harald Leithner]&lt;br /&gt;
&lt;br /&gt;
==Project III: Joomla SEO Improvements==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
*&#039;&#039;&#039;CORE PART.&#039;&#039;&#039; Yoast style integration in core:&lt;br /&gt;
**OpenGraph Integration: http://ogp.me/&lt;br /&gt;
**Metadata Integration: Schema.org (Basic Editing)&lt;br /&gt;
**Custom title for articles (com_content)&lt;br /&gt;
**Ability to add Custom meta tags (like twitter:card)&lt;br /&gt;
*&#039;&#039;&#039;CORE SUPPORTED EXTENSION.&#039;&#039;&#039; Google Tools - See [https://www.searchenginejournal.com/google-introduces-wordpress-plugin-with-integrated-analytics-search-console-more/282385/ this article]&lt;br /&gt;
* Basically Google Analytics integration and statistics&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have:&#039;&#039; PHP&lt;br /&gt;
*&#039;&#039;Nice to have:&#039;&#039; Joomla MVC, Search Engine Optimization (SEO), Analytics&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:christopher.wagner@community.joomla.org Christopher Wagner]&lt;br /&gt;
*[mailto:rowan.hoskyns-abrahall@community.joomla.org Rowan Hoskyns Abrahall]&lt;br /&gt;
*[mailto:tony@xws.im Tony Partridge]&lt;br /&gt;
&lt;br /&gt;
==Project IV: Joomla 4 Feature Enhancements==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
# 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).&lt;br /&gt;
# Add information of the selected menu item (like article title) to the menu overview list (&amp;lt;tt&amp;gt;expose=true&amp;lt;/tt&amp;gt; in the menu default.xml for example). This way we wouldn&#039;t have to access the item each time to find out what&#039;s assigned to it. Make sure you only allow a single exposed item.&lt;br /&gt;
# Show Cookie Consent (Plugin)&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have&#039;&#039;: PHP, XML&lt;br /&gt;
*&#039;&#039;Nice to have&#039;&#039;: Joomla MVC&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
* [mailto:yves.hoppe@community.joomla.org Yves Hoppe]&lt;br /&gt;
* [mailto:luca.marzo@community.joomla.org Luca Marzo]&lt;br /&gt;
* [mailto:nicolagalgano@yahoo.it Nicol Galgano]&lt;br /&gt;
&lt;br /&gt;
==Project V: Joomla 4 Accessibility ==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*HTML, CSS, PHP, Accessibility, Javascript&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
* [mailto:kontakt@chmst.de Christiane Maier-Stadtherr] (main mentor)&lt;br /&gt;
* [mailto:astrid.guenther@community.joomla.org Astrid Günther]&lt;br /&gt;
* [mailto:l.jardin@djumla.de Lukas Jardin]&lt;br /&gt;
&lt;br /&gt;
====External Consultant====&lt;br /&gt;
* [mailto:s.wajda@joomla.pl Stefan Wadja] &lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=594726</id>
		<title>GSOC 2019 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=594726"/>
		<updated>2019-02-26T09:00:50Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Removed Joomla update project&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Top portal heading|color=white-bkgd|text-color=#333|title=&lt;br /&gt;
Welcome to Joomla GSoC 2019 Projects Page }}&lt;br /&gt;
[[Image:Gsoc2016.png|150px|center|link=GSoC 2019]]&lt;br /&gt;
&lt;br /&gt;
{{tip|title=The application for students is going to open soon!}} &lt;br /&gt;
&lt;br /&gt;
Welcome to the [[GSoC_2019|Joomla Google Summer of Code (GSoC) 2019]] projects page. &lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google]. We strongly encourage you to ask questions about process and projects on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list] and join our &lt;br /&gt;
[https://glip.com/joomla public Glip / Ringcentral chat tool].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Note: The GSoC 2019 projects are displayed in no particular order&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Project I: Webservices in Joomla ==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
Continue the work done on implementing Web Services in Joomla 4, which has been successfully started during the two last years GSoC projects.&lt;br /&gt;
# Integrate existing web services stack with the existing MVC layer - so minimal error handling&lt;br /&gt;
# 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.)&lt;br /&gt;
   &lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*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&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:george.wilson@community.joomla.org George Wilson] (main mentor)&lt;br /&gt;
*[mailto:isacandrei19@gmail.com Andrei Isac]&lt;br /&gt;
&lt;br /&gt;
==Project II: New frontend template: Page-builder==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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). This project aims to bring this one step further. The page builder template rebuilds the index.php and the template.xml in a GUI component in the backend of the template.&amp;lt;br /&amp;gt;&lt;br /&gt;
Depending on the status of web services, it might be a com_ajax plugin and template. &amp;lt;br /&amp;gt;&lt;br /&gt;
This project is aimed at multiple students and multiple GSoC editions and one of the long term projects of Joomla.&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*PHP, HTML, VueJS, JavaScript&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium to hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
* [mailto:benjamin@benjamintrenkle.de Benjamin Trenkle] (main mentor)&lt;br /&gt;
* [mailto:vivianamenzel@gmail.com Viviana Menzel]&lt;br /&gt;
* [mailto:harald.leithner@community.joomla.org Harald Leithner]&lt;br /&gt;
&lt;br /&gt;
==Project III: Joomla SEO Improvements==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
*&#039;&#039;&#039;CORE PART.&#039;&#039;&#039; Yoast style integration in core:&lt;br /&gt;
**OpenGraph Integration: http://ogp.me/&lt;br /&gt;
**Metadata Integration: Schema.org (Basic Editing)&lt;br /&gt;
**Custom title for articles (com_content)&lt;br /&gt;
**Ability to add Custom meta tags (like twitter:card)&lt;br /&gt;
*&#039;&#039;&#039;CORE SUPPORTED EXTENSION.&#039;&#039;&#039; Google Tools - See [https://www.searchenginejournal.com/google-introduces-wordpress-plugin-with-integrated-analytics-search-console-more/282385/ this article]&lt;br /&gt;
* Basically Google Analytics integration and statistics&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have:&#039;&#039; PHP&lt;br /&gt;
*&#039;&#039;Nice to have:&#039;&#039; Joomla MVC, Search Engine Optimization (SEO), Analytics&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:christopher.wagner@community.joomla.org Christopher Wagner]&lt;br /&gt;
*[mailto:rowan.hoskyns-abrahall@community.joomla.org Rowan Hoskyns Abrahall]&lt;br /&gt;
*[mailto:tony@xws.im Tony Partridge]&lt;br /&gt;
&lt;br /&gt;
==Project IV: Joomla 4 Feature Enhancements==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
# 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).&lt;br /&gt;
# Add information of the selected menu item (like article title) to the menu overview list (&amp;lt;tt&amp;gt;expose=true&amp;lt;/tt&amp;gt; in the menu default.xml for example). This way we wouldn&#039;t have to access the item each time to find out what&#039;s assigned to it. Make sure you only allow a single exposed item.&lt;br /&gt;
# Show Cookie Consent (Plugin)&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have&#039;&#039;: PHP, XML&lt;br /&gt;
*&#039;&#039;Nice to have&#039;&#039;: Joomla MVC&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
* [mailto:yves.hoppe@community.joomla.org Yves Hoppe]&lt;br /&gt;
&lt;br /&gt;
==Project V: Joomla 4 Accessibility ==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*HTML, CSS, PHP, Accessibility, Javascript&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
* [mailto:kontakt@chmst.de Christiane Maier-Stadtherr] (main mentor)&lt;br /&gt;
* [mailto:astrid.guenther@community.joomla.org Astrid Günther]&lt;br /&gt;
* [mailto:l.jardin@djumla.de Lukas Jardin]&lt;br /&gt;
&lt;br /&gt;
====External Consultant====&lt;br /&gt;
* [mailto:s.wajda@joomla.pl Stefan Wadja] &lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=591666</id>
		<title>GSOC 2019 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=591666"/>
		<updated>2019-02-07T15:40:12Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Added glip join link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Top portal heading|color=white-bkgd|text-color=#333|title=&lt;br /&gt;
Welcome to Joomla GSoC 2019 Projects Page }}&lt;br /&gt;
[[Image:Gsoc2016.png|150px|center|link=GSoC 2019]]&lt;br /&gt;
&lt;br /&gt;
{{tip|title=The application for students is going to open soon!}} &lt;br /&gt;
&lt;br /&gt;
Welcome to the [[GSoC_2019|Joomla Google Summer of Code (GSoC) 2019]] projects page. &lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google]. We strongly encourage you to ask questions about process and projects on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list] and join our &lt;br /&gt;
[https://glip.com/joomla public Glip / Ringcentral chat tool].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Note: The GSoC 2019 projects are displayed in no particular order&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Project I: Webservices in Joomla ==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
Continue the work done on implementing Web Services in Joomla 4, which has been successfully started during the two last years GSoC projects.&lt;br /&gt;
# Integrate existing web services stack with the existing MVC layer - so minimal error handling&lt;br /&gt;
# 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.)&lt;br /&gt;
   &lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*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&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:george.wilson@community.joomla.org George Wilson] (main mentor)&lt;br /&gt;
*[mailto:isacandrei19@gmail.com Andrei Isac]&lt;br /&gt;
&lt;br /&gt;
==Project II: New frontend template: Page-builder==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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). This project aims to bring this one step further. The page builder template rebuilds the index.php and the template.xml in a GUI component in the backend of the template.&amp;lt;br /&amp;gt;&lt;br /&gt;
Depending on the status of web services, it might be a com_ajax plugin and template. &amp;lt;br /&amp;gt;&lt;br /&gt;
This project is aimed at multiple students and multiple GSoC editions and one of the long term projects of Joomla.&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*PHP, HTML, VueJS, JavaScript&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium to hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
* [mailto:benjamin@benjamintrenkle.de Benjamin Trenkle] (main mentor)&lt;br /&gt;
* [mailto:vivianamenzel@gmail.com Viviana Menzel]&lt;br /&gt;
* [mailto:harald.leithner@community.joomla.org Harald Leithner]&lt;br /&gt;
&lt;br /&gt;
==Project III: Automatic installation of Joomla patch updates==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
Joomla has currently no auto-updater, which leads to outdated websites and 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) to be integrated in the Joomla core. &lt;br /&gt;
&lt;br /&gt;
For security update archives should be checked ideally with GPG (libsodium) and hash sums.&lt;br /&gt;
&lt;br /&gt;
===Expected Results===&lt;br /&gt;
*A basic Auto-updater for Joomla 4&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have&#039;&#039;: PHP, curl&lt;br /&gt;
*&#039;&#039;Nice to have&#039;&#039;: libsodium, GPG, Joomla MVC&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium to Hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:yves.hoppe@community.joomla.org Yves Hoppe]&lt;br /&gt;
*[mailto:luca.marzo@community.joomla.org Luca Marzo]&lt;br /&gt;
&lt;br /&gt;
==Project IV: Joomla SEO Improvements==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
*&#039;&#039;&#039;CORE PART.&#039;&#039;&#039; Yoast style integration in core:&lt;br /&gt;
**OpenGraph Integration: http://ogp.me/&lt;br /&gt;
**Metadata Integration: Schema.org (Basic Editing)&lt;br /&gt;
**Custom title for articles (com_content)&lt;br /&gt;
**Ability to add Custom meta tags (like twitter:card)&lt;br /&gt;
*&#039;&#039;&#039;CORE SUPPORTED EXTENSION.&#039;&#039;&#039; Google Tools - See [https://www.searchenginejournal.com/google-introduces-wordpress-plugin-with-integrated-analytics-search-console-more/282385/ this article]&lt;br /&gt;
* Basically Google Analytics integration and statistics&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have:&#039;&#039; PHP&lt;br /&gt;
*&#039;&#039;Nice to have:&#039;&#039; Joomla MVC, Search Engine Optimization (SEO), Analytics&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:christopher.wagner@community.joomla.org Christopher Wagner]&lt;br /&gt;
*[mailto:rowan.hoskyns-abrahall@community.joomla.org Rowan Hoskyns Abrahall]&lt;br /&gt;
*[mailto:tony@xws.im Tony Partridge]&lt;br /&gt;
&lt;br /&gt;
==Project V: Joomla 4 Feature Enhancements==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
# 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).&lt;br /&gt;
# Add information of the selected menu item (like article title) to the menu overview list (&amp;lt;tt&amp;gt;expose=true&amp;lt;/tt&amp;gt; in the menu default.xml for example). This way we wouldn&#039;t have to access the item each time to find out what&#039;s assigned to it. Make sure you only allow a single exposed item.&lt;br /&gt;
# Show Cookie Consent (Plugin)&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have&#039;&#039;: PHP, XML&lt;br /&gt;
*&#039;&#039;Nice to have&#039;&#039;: Joomla MVC&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
==Project VI: Joomla 4 Accessibility ==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*HTML, CSS, PHP, Accessibility, Javascript&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
* [mailto:kontakt@chmst.de Christiane Maier-Stadtherr] (main mentor)&lt;br /&gt;
* [mailto:astrid.guenther@community.joomla.org Astrid Günther]&lt;br /&gt;
* [mailto:l.jardin@djumla.de Lukas Jardin]&lt;br /&gt;
&lt;br /&gt;
====External Consultant====&lt;br /&gt;
* [mailto:s.wajda@joomla.pl Stefan Wadja] &lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSoC_Mentors_Selection_Criteria&amp;diff=586499</id>
		<title>GSoC Mentors Selection Criteria</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSoC_Mentors_Selection_Criteria&amp;diff=586499"/>
		<updated>2019-01-10T07:56:27Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|200px|right|link=GSoC 2019]]Mentoring a student is a great, but also a very challenging experiences. To be an effective mentor involves a lot of commitment and knowledge about the Project.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==How are mentors selected among everyone that applied as volunteer?==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
These are the most important points that we considered as criteria for the selection:&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
*&#039;&#039;&#039;Skill set and time to commit&#039;&#039;&#039;&lt;br /&gt;
::We prefer to have mentors that have the specific skills set required for the projects and someone who has been previously involved in the community.&lt;br /&gt;
 &lt;br /&gt;
*&#039;&#039;&#039;If you understand the Idea of Google Summer of Code.&#039;&#039;&#039;&lt;br /&gt;
::It&#039;s easier for volunteers who have been previously involved in Google Summer of Code to understand what is the expectation. They have a clear idea of timelines and evaluations.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;For first timers, it is important that they are really committed to the project and deeply interested in taking the project to completion.&#039;&#039;&#039;&lt;br /&gt;
::Mentoring doesn’t involve only technical skills, but also needs a lot of &#039;&#039;&#039;passion&#039;&#039;&#039;, &#039;&#039;&#039;patience&#039;&#039;&#039; and &#039;&#039;&#039;responsibility&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Preference is always given to the mentor that submitted the project idea.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSoC_Mentor_Guidelines&amp;diff=586498</id>
		<title>GSoC Mentor Guidelines</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSoC_Mentor_Guidelines&amp;diff=586498"/>
		<updated>2019-01-10T07:55:12Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Preparing GSoC 2019&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|50px|left]]&lt;br /&gt;
==Want to become a Mentor?==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Mentors play a crucial role in the program by guiding students during projects&#039; development. They will help students to set realistic goals and to review their code when needed. That&#039;s the reason why mentors should be familiar with the Joomla! code base. Mentoring for GSoC requires commitment and dedicated time during the eight week project period. Here are some resources for mentors to become familiar with the GSoC program.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Decide if you are [https://developers.google.com/open-source/gsoc/faq?hl=en#what_are_the_eligibility_requirements_for_mentors eligible].&lt;br /&gt;
*Go through the [https://developers.google.com/open-source/gsoc/resources/manual Mentor Manual] on GSoC site.&lt;br /&gt;
*Go through the [https://summerofcode.withgoogle.com/rules/ Rules for the Program] on the GSoC Site.&lt;br /&gt;
*Read the [https://summerofcode.withgoogle.com/terms/mentor Mentor Participation Agreement] from Google. &lt;br /&gt;
*Examine the list of available [https://docs.joomla.org/GSOC_2019_Project_Ideas project ideas] in Joomla for GSoC 2019.&lt;br /&gt;
*Help students in the [https://groups.google.com/forum/#!forum/jgsoc Joomla GSoC Mailing list].&lt;br /&gt;
*Register on [https://summerofcode.withgoogle.com/ GSoC] site as a mentor (after mentor registrations open).&lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code]] [[Category:Google Summer of Code 2019]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586497</id>
		<title>GSOC 2019 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586497"/>
		<updated>2019-01-10T07:50:55Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: /* Project I: Webservices in Joomla */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Top portal heading|color=white-bkgd|text-color=#333|title=&lt;br /&gt;
Welcome to Joomla GSoC 2019 Projects Page }}&lt;br /&gt;
[[Image:Gsoc2016.png|150px|center|link=GSoC 2019]]&lt;br /&gt;
&lt;br /&gt;
{{tip|title=The application for students is going to open soon!}} &lt;br /&gt;
&lt;br /&gt;
Welcome to the [[GSoC_2019|Joomla Google Summer of Code (GSoC) 2019]] projects page. &lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google]. We strongly encourage you to ask questions about process and projects on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list] and join our public Glip / RingCentral chat tool.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Note: The GSoC 2019 projects are displayed in no particular order)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Project I: Webservices in Joomla ==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
Continue the work done on implementing Web Services in Joomla 4, which has been successfully started during the two last years GSoC projects.&lt;br /&gt;
# Integrate existing web services stack with the existing MVC layer - so minimal error handling&lt;br /&gt;
# 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.)&lt;br /&gt;
   &lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*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&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:george.wilson@community.joomla.org George Wilson]&lt;br /&gt;
&lt;br /&gt;
==Project II: New frontend template: Page-builder==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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). This project aims to bring this one step further. The page builder template rebuilds the index.php and the template.xml in a GUI component in the backend of the template.&amp;lt;br /&amp;gt;&lt;br /&gt;
Depending on the status of web services, it might be a com_ajax plugin and template. &amp;lt;br /&amp;gt;&lt;br /&gt;
This project is aimed at multiple students and multiple GSoC editions and one of the long term projects of Joomla.&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*PHP, HTML, VueJS, JavaScript&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium to hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
==Project III: Automatic installation of Joomla patch updates==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
Joomla has currently no auto-updater, which leads to outdated websites and 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) to be integrated in the Joomla core. &lt;br /&gt;
&lt;br /&gt;
For security update archives should be checked ideally with GPG (libsodium) and hash sums.&lt;br /&gt;
&lt;br /&gt;
===Expected Results===&lt;br /&gt;
*A basic Auto-updater for Joomla 4&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have&#039;&#039;: PHP, curl&lt;br /&gt;
*&#039;&#039;Nice to have&#039;&#039;: libsodium, GPG, Joomla MVC&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium to Hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:yves.hoppe@community.joomla.org Yves Hoppe]&lt;br /&gt;
*[mailto:robert.deutz@community.joomla.org Robert Deutz]&lt;br /&gt;
&lt;br /&gt;
==Project IV: Joomla SEO Improvements==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
*&#039;&#039;&#039;CORE PART.&#039;&#039;&#039; Yoast style integration in core:&lt;br /&gt;
**OpenGraph Integration: http://ogp.me/&lt;br /&gt;
**Metadata Integration: Schema.org (Basic Editing)&lt;br /&gt;
**Custom title for articles (com_content)&lt;br /&gt;
**Ability to add Custom meta tags (like twitter:card)&lt;br /&gt;
*&#039;&#039;&#039;CORE SUPPORTED EXTENSION.&#039;&#039;&#039; Google Tools - See [https://www.searchenginejournal.com/google-introduces-wordpress-plugin-with-integrated-analytics-search-console-more/282385/ this article]&lt;br /&gt;
* Basically Google Analytics integration and statistics&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have:&#039;&#039; PHP&lt;br /&gt;
*&#039;&#039;Nice to have:&#039;&#039; Joomla MVC, Search Engine Optimization (SEO), Analytics&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:christopher.wagner@community.joomla.org Christopher Wagner]&lt;br /&gt;
*[mailto:rowan.hoskyns-abrahall@community.joomla.org Rowan Hoskyns Abrahall]&lt;br /&gt;
&lt;br /&gt;
==Project V: Joomla 4 Feature Enhancements==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
# 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).&lt;br /&gt;
# Add information of the selected menu item (like article title) to the menu overview list (&amp;lt;tt&amp;gt;expose=true&amp;lt;/tt&amp;gt; in the menu default.xml for example). This way we wouldn&#039;t have to access the item each time to find out what&#039;s assigned to it. Make sure you only allow a single exposed item.&lt;br /&gt;
# Show Cookie Consent (Plugin)&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have&#039;&#039;: PHP, XML&lt;br /&gt;
*&#039;&#039;Nice to have&#039;&#039;: Joomla MVC&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
==Project VI: Joomla 4 Accessibility ==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*HTML, CSS, PHP, Accessibility&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586496</id>
		<title>GSOC 2019 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586496"/>
		<updated>2019-01-10T07:48:32Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: /* Project II: New frontend template: Page-builder */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Top portal heading|color=white-bkgd|text-color=#333|title=&lt;br /&gt;
Welcome to Joomla GSoC 2019 Projects Page }}&lt;br /&gt;
[[Image:Gsoc2016.png|150px|center|link=GSoC 2019]]&lt;br /&gt;
&lt;br /&gt;
{{tip|title=The application for students is going to open soon!}} &lt;br /&gt;
&lt;br /&gt;
Welcome to the [[GSoC_2019|Joomla Google Summer of Code (GSoC) 2019]] projects page. &lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google]. We strongly encourage you to ask questions about process and projects on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list] and join our public Glip / RingCentral chat tool.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Note: The GSoC 2019 projects are displayed in no particular order)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Project I: Webservices in Joomla ==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
Continue the work done on implementing Web Services in Joomla 4 built during the two last years GSoC projects.&lt;br /&gt;
# Integrate existing web services stack with the existing MVC layer - so minimal error handling&lt;br /&gt;
# 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.)&lt;br /&gt;
   &lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*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&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:george.wilson@community.joomla.org George Wilson]&lt;br /&gt;
 &lt;br /&gt;
==Project II: New frontend template: Page-builder==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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). This project aims to bring this one step further. The page builder template rebuilds the index.php and the template.xml in a GUI component in the backend of the template.&amp;lt;br /&amp;gt;&lt;br /&gt;
Depending on the status of web services, it might be a com_ajax plugin and template. &amp;lt;br /&amp;gt;&lt;br /&gt;
This project is aimed at multiple students and multiple GSoC editions and one of the long term projects of Joomla.&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*PHP, HTML, VueJS, JavaScript&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium to hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
==Project III: Automatic installation of Joomla patch updates==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
Joomla has currently no auto-updater, which leads to outdated websites and 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) to be integrated in the Joomla core. &lt;br /&gt;
&lt;br /&gt;
For security update archives should be checked ideally with GPG (libsodium) and hash sums.&lt;br /&gt;
&lt;br /&gt;
===Expected Results===&lt;br /&gt;
*A basic Auto-updater for Joomla 4&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have&#039;&#039;: PHP, curl&lt;br /&gt;
*&#039;&#039;Nice to have&#039;&#039;: libsodium, GPG, Joomla MVC&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium to Hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:yves.hoppe@community.joomla.org Yves Hoppe]&lt;br /&gt;
*[mailto:robert.deutz@community.joomla.org Robert Deutz]&lt;br /&gt;
&lt;br /&gt;
==Project IV: Joomla SEO Improvements==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
*&#039;&#039;&#039;CORE PART.&#039;&#039;&#039; Yoast style integration in core:&lt;br /&gt;
**OpenGraph Integration: http://ogp.me/&lt;br /&gt;
**Metadata Integration: Schema.org (Basic Editing)&lt;br /&gt;
**Custom title for articles (com_content)&lt;br /&gt;
**Ability to add Custom meta tags (like twitter:card)&lt;br /&gt;
*&#039;&#039;&#039;CORE SUPPORTED EXTENSION.&#039;&#039;&#039; Google Tools - See [https://www.searchenginejournal.com/google-introduces-wordpress-plugin-with-integrated-analytics-search-console-more/282385/ this article]&lt;br /&gt;
* Basically Google Analytics integration and statistics&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have:&#039;&#039; PHP&lt;br /&gt;
*&#039;&#039;Nice to have:&#039;&#039; Joomla MVC, Search Engine Optimization (SEO), Analytics&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:christopher.wagner@community.joomla.org Christopher Wagner]&lt;br /&gt;
*[mailto:rowan.hoskyns-abrahall@community.joomla.org Rowan Hoskyns Abrahall]&lt;br /&gt;
&lt;br /&gt;
==Project V: Joomla 4 Feature Enhancements==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
# 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).&lt;br /&gt;
# Add information of the selected menu item (like article title) to the menu overview list (&amp;lt;tt&amp;gt;expose=true&amp;lt;/tt&amp;gt; in the menu default.xml for example). This way we wouldn&#039;t have to access the item each time to find out what&#039;s assigned to it. Make sure you only allow a single exposed item.&lt;br /&gt;
# Show Cookie Consent (Plugin)&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have&#039;&#039;: PHP, XML&lt;br /&gt;
*&#039;&#039;Nice to have&#039;&#039;: Joomla MVC&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
==Project VI: Joomla 4 Accessibility ==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*HTML, CSS, PHP, Accessibility&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586495</id>
		<title>GSOC 2019 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586495"/>
		<updated>2019-01-10T07:46:12Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: /* Project III: Automatic installation of Joomla patch updates (Optional) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Top portal heading|color=white-bkgd|text-color=#333|title=&lt;br /&gt;
Welcome to Joomla GSoC 2019 Projects Page }}&lt;br /&gt;
[[Image:Gsoc2016.png|150px|center|link=GSoC 2019]]&lt;br /&gt;
&lt;br /&gt;
{{tip|title=The application for students is going to open soon!}} &lt;br /&gt;
&lt;br /&gt;
Welcome to the [[GSoC_2019|Joomla Google Summer of Code (GSoC) 2019]] projects page. &lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google]. We strongly encourage you to ask questions about process and projects on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list] and join our public Glip / RingCentral chat tool.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Note: The GSoC 2019 projects are displayed in no particular order)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Project I: Webservices in Joomla ==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
Continue the work done on implementing Web Services in Joomla 4 built during the two last years GSoC projects.&lt;br /&gt;
# Integrate existing web services stack with the existing MVC layer - so minimal error handling&lt;br /&gt;
# 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.)&lt;br /&gt;
   &lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*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&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:george.wilson@community.joomla.org George Wilson]&lt;br /&gt;
 &lt;br /&gt;
==Project II: New frontend template: Page-builder==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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.&amp;lt;br /&amp;gt;&lt;br /&gt;
Depending on the status of web services, it might be a com_ajax plugin and template. &amp;lt;br /&amp;gt;&lt;br /&gt;
This project is aimed at multiple students and multiple GSoC editions.&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*PHP, HTML, VueJS, JavaScript&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium to hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
==Project III: Automatic installation of Joomla patch updates==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
Joomla has currently no auto-updater, which leads to outdated websites and 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) to be integrated in the Joomla core. &lt;br /&gt;
&lt;br /&gt;
For security update archives should be checked ideally with GPG (libsodium) and hash sums.&lt;br /&gt;
&lt;br /&gt;
===Expected Results===&lt;br /&gt;
*A basic Auto-updater for Joomla 4&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have&#039;&#039;: PHP, curl&lt;br /&gt;
*&#039;&#039;Nice to have&#039;&#039;: libsodium, GPG, Joomla MVC&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium to Hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:yves.hoppe@community.joomla.org Yves Hoppe]&lt;br /&gt;
*[mailto:robert.deutz@community.joomla.org Robert Deutz]&lt;br /&gt;
&lt;br /&gt;
==Project IV: Joomla SEO Improvements==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
*&#039;&#039;&#039;CORE PART.&#039;&#039;&#039; Yoast style integration in core:&lt;br /&gt;
**OpenGraph Integration: http://ogp.me/&lt;br /&gt;
**Metadata Integration: Schema.org (Basic Editing)&lt;br /&gt;
**Custom title for articles (com_content)&lt;br /&gt;
**Ability to add Custom meta tags (like twitter:card)&lt;br /&gt;
*&#039;&#039;&#039;CORE SUPPORTED EXTENSION.&#039;&#039;&#039; Google Tools - See [https://www.searchenginejournal.com/google-introduces-wordpress-plugin-with-integrated-analytics-search-console-more/282385/ this article]&lt;br /&gt;
* Basically Google Analytics integration and statistics&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have:&#039;&#039; PHP&lt;br /&gt;
*&#039;&#039;Nice to have:&#039;&#039; Joomla MVC, Search Engine Optimization (SEO), Analytics&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:christopher.wagner@community.joomla.org Christopher Wagner]&lt;br /&gt;
*[mailto:rowan.hoskyns-abrahall@community.joomla.org Rowan Hoskyns Abrahall]&lt;br /&gt;
&lt;br /&gt;
==Project V: Joomla 4 Feature Enhancements==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
# 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).&lt;br /&gt;
# Add information of the selected menu item (like article title) to the menu overview list (&amp;lt;tt&amp;gt;expose=true&amp;lt;/tt&amp;gt; in the menu default.xml for example). This way we wouldn&#039;t have to access the item each time to find out what&#039;s assigned to it. Make sure you only allow a single exposed item.&lt;br /&gt;
# Show Cookie Consent (Plugin)&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have&#039;&#039;: PHP, XML&lt;br /&gt;
*&#039;&#039;Nice to have&#039;&#039;: Joomla MVC&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
==Project VI: Joomla 4 Accessibility ==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*HTML, CSS, PHP, Accessibility&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586494</id>
		<title>GSOC 2019 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586494"/>
		<updated>2019-01-10T07:43:22Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: /* Project IV: Joomla SEO Improvements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Top portal heading|color=white-bkgd|text-color=#333|title=&lt;br /&gt;
Welcome to Joomla GSoC 2019 Projects Page }}&lt;br /&gt;
[[Image:Gsoc2016.png|150px|center|link=GSoC 2019]]&lt;br /&gt;
&lt;br /&gt;
{{tip|title=The application for students is going to open soon!}} &lt;br /&gt;
&lt;br /&gt;
Welcome to the [[GSoC_2019|Joomla Google Summer of Code (GSoC) 2019]] projects page. &lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google]. We strongly encourage you to ask questions about process and projects on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list] and join our public Glip / RingCentral chat tool.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Note: The GSoC 2019 projects are displayed in no particular order)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Project I: Webservices in Joomla ==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
Continue the work done on implementing Web Services in Joomla 4 built during the two last years GSoC projects.&lt;br /&gt;
# Integrate existing web services stack with the existing MVC layer - so minimal error handling&lt;br /&gt;
# 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.)&lt;br /&gt;
   &lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*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&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:george.wilson@community.joomla.org George Wilson]&lt;br /&gt;
 &lt;br /&gt;
==Project II: New frontend template: Page-builder==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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.&amp;lt;br /&amp;gt;&lt;br /&gt;
Depending on the status of web services, it might be a com_ajax plugin and template. &amp;lt;br /&amp;gt;&lt;br /&gt;
This project is aimed at multiple students and multiple GSoC editions.&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*PHP, HTML, VueJS, JavaScript&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium to hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
==Project III: Automatic installation of Joomla patch updates (Optional)==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
===Expected Results===&lt;br /&gt;
*Auto-updater for Joomla 4&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have&#039;&#039;: PHP, curl&lt;br /&gt;
*&#039;&#039;Nice to have&#039;&#039;: libsodium, GPG, Joomla MVC&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium to Hard&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:yves.hoppe@community.joomla.org Yves Hoppe]&lt;br /&gt;
*[mailto:robert.deutz@community.joomla.org Robert Deutz]&lt;br /&gt;
&lt;br /&gt;
==Project IV: Joomla SEO Improvements==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
*&#039;&#039;&#039;CORE PART.&#039;&#039;&#039; Yoast style integration in core:&lt;br /&gt;
**OpenGraph Integration: http://ogp.me/&lt;br /&gt;
**Metadata Integration: Schema.org (Basic Editing)&lt;br /&gt;
**Custom title for articles (com_content)&lt;br /&gt;
**Ability to add Custom meta tags (like twitter:card)&lt;br /&gt;
*&#039;&#039;&#039;CORE SUPPORTED EXTENSION.&#039;&#039;&#039; Google Tools - See [https://www.searchenginejournal.com/google-introduces-wordpress-plugin-with-integrated-analytics-search-console-more/282385/ this article]&lt;br /&gt;
* Basically Google Analytics integration and statistics&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have:&#039;&#039; PHP&lt;br /&gt;
*&#039;&#039;Nice to have:&#039;&#039; Joomla MVC, Search Engine Optimization (SEO), Analytics&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*[mailto:christopher.wagner@community.joomla.org Christopher Wagner]&lt;br /&gt;
*[mailto:rowan.hoskyns-abrahall@community.joomla.org Rowan Hoskyns Abrahall]&lt;br /&gt;
&lt;br /&gt;
==Project V: Joomla 4 Feature Enhancements==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
# 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).&lt;br /&gt;
# Add information of the selected menu item (like article title) to the menu overview list (&amp;lt;tt&amp;gt;expose=true&amp;lt;/tt&amp;gt; in the menu default.xml for example). This way we wouldn&#039;t have to access the item each time to find out what&#039;s assigned to it. Make sure you only allow a single exposed item.&lt;br /&gt;
# Show Cookie Consent (Plugin)&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*&#039;&#039;Must have&#039;&#039;: PHP, XML&lt;br /&gt;
*&#039;&#039;Nice to have&#039;&#039;: Joomla MVC&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
==Project VI: Joomla 4 Accessibility ==&lt;br /&gt;
&lt;br /&gt;
===Project Description===&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
===Knowledge Prerequisite===&lt;br /&gt;
*HTML, CSS, PHP, Accessibility&lt;br /&gt;
&lt;br /&gt;
===Difficulty===&lt;br /&gt;
*Medium&lt;br /&gt;
&lt;br /&gt;
===Mentors===&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586473</id>
		<title>GSOC 2019 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586473"/>
		<updated>2019-01-09T10:53:47Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Welcome to Joomla GSoC 2019 Projects page ==&lt;br /&gt;
{{tip|title=The application for students is going to open soon!}} &lt;br /&gt;
&lt;br /&gt;
Welcome to the [[GSoC_2019|Joomla Google Summer of Code (GSoC) 2019]] projects page. &lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google]. We strongly encourage you to ask questions about process and projects on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list] and join our public Glip / RingCentral chat tool.&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|250px|center|link=GSoC 2019]]&lt;br /&gt;
&lt;br /&gt;
GSoC 2019 projects (in no particular order)&lt;br /&gt;
----&lt;br /&gt;
====Project I: Webservices in Joomla ====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Continue the work done on implementing Webervices in Joomla 4 building on the two last years GSoC projects.&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;1. Integrate existing webservices stack with the existing MVC layer - so minimal error handling&amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;2. Continue work on the entities layer in Joomla (basically a new MVC layer for Joomla that is more&lt;br /&gt;
          webservices friendly and better error handling and concept of relations etc etc etc)&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:george.wilson@community.joomla.org George Wilson]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project II: New frontend template: Page-builder====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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 a index.php and template.xml that can be rebuilt based on a GUI component in the backend.&amp;lt;br&amp;gt; Depending on status of webservices might be a com_ajax plugin and template. This project is aimed at multiple students and multiple GSoC editions.&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, HTML, VueJS, JavaScript&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project III: Automatic installation of Joomla patch updates (Optional)====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Joomla currently has 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).&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Auto-updater for Joomla 4&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must haves: PHP, curl&amp;lt;br&amp;gt;Nice to have: libsodium, GPG, Joomla MVC&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:yves.hoppe@community.joomla.org Yves Hoppe], [mailto:robert.deutz@community.joomla.org Robert Deutz]&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project IV: Joomla SEO Improvements====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;CORE PART Yoast style integration in core:&amp;lt;br&amp;gt;(SEO, og), Metadata SEO: Schema.org (Basic Editing), Open Graph, Custom title (com_content), Custom meta tags (like twitter:card)&amp;lt;br&amp;gt;CORE SUPPORTED EXTENSION: Google Tools (see:      https://www.searchenginejournal.com/google-introduces-wordpress-plugin-with-integrated-analytics-search-console-more/282385/)&amp;lt;br&amp;gt;- basically google analytics integration&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must have: PHP&amp;lt;br&amp;gt;Nice to have: Joomla MVC, Search Engine Optimization (SEO), Analytics&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:christopher.wagner@community.joomla.org Christopher Wagner], [mailto:rowan.hoskyns-abrahall@community.joomla.org Rowan Hoskyns Abrahall]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project V: Joomla 4 Feature Enhancements====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;1) Placing modules on a page (in the menu item form) is tedious atm. Ability to change the module menu assignment in the menu item (menu module assignment tab, currently read only).&amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;2) 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&#039;t have to access the item each time to find out what&#039;s assigned to it. Make sure you only allow a single exposed item.&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;3) Show Cookie Consent (Plugin)&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must haves: PHP, XML&amp;lt;br&amp;gt;Nice to have: Joomla MVC&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
====Project VI: Joomla 4 Accessibility ====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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.&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;HTML, CSS, PHP, Accessibility&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586472</id>
		<title>GSOC 2019 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586472"/>
		<updated>2019-01-09T10:52:49Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Welcome to Joomla GSoC 2019 Projects page ==&lt;br /&gt;
{{tip|title=The application for students is going to open soon!}} &lt;br /&gt;
&lt;br /&gt;
Welcome to the [[GSoC_2019|Joomla Google Summer of Code (GSoC) 2019]] projects page. &lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google]. We strongly encourage you to ask questions about process and projects on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list] and join our public Glip / RingCentral chat tool.&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|250px|center|link=GSoC 2019]]&lt;br /&gt;
&lt;br /&gt;
GSoC 2019 projects (in no particular order)&lt;br /&gt;
----&lt;br /&gt;
====Project I: Webservices in Joomla ====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Continue the work done on implementing Webervices in Joomla 4 building on the two last years GSoC projects.&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;1. Integrate existing webservices stack with the existing MVC layer - so minimal error handling&amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;2. Continue work on the entities layer in Joomla (basically a new MVC layer for Joomla that is more&lt;br /&gt;
          webservices friendly and better error handling and concept of relations etc etc etc)&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:george.wilson@community.joomla.org George Wilson]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project II: New frontend template: Page-builder====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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 a index.php and template.xml that can be rebuilt based on a GUI component in the backend.&amp;lt;br&amp;gt; Depending on status of webservices might be a com_ajax plugin and template. This project is aimed at multiple students and multiple GSoC editions.&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, HTML, VueJS, JavaScript&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project III: Automatic installation of Joomla patch updates (Optional)====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Joomla currently has 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).&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Auto-updater for Joomla 4&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must haves: PHP, curl&amp;lt;br&amp;gt;Nice to have: libsodium, GPG, Joomla MVC&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:yves.hoppe@community.joomla.org Yves Hoppe], [mailto:robert.deutz@community.joomla.org Robert Deutz]&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project IV: Joomla SEO Improvements====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;CORE PART Yoast style integration in core:&amp;lt;br&amp;gt;(SEO, og), Metadata SEO: Schema.org (Basic Editing), Open Graph, Custom title (com_content), Custom meta tags (like twitter:card)&amp;lt;br&amp;gt;CORE SUPPORTED EXTENSION: Google Tools (see:      https://www.searchenginejournal.com/google-introduces-wordpress-plugin-with-integrated-analytics-search-console-more/282385/)&amp;lt;br&amp;gt;- basically google analytics integration&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must have: PHP&amp;lt;br&amp;gt;Nice to have: Joomla MVC, Search Engine Optimization (SEO), Analytics&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:christopher.wagner@community.joomla.org Christopher Wagner], [mailto:rowan.hoskyns-abrahall@community.joomla.org &lt;br /&gt;
 Rowan Hoskyns Abrahall]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project V: Joomla 4 Feature Enhancements====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;1) Placing modules on a page (in the menu item form) is tedious atm. Ability to change the module menu assignment in the menu item (menu module assignment tab, currently read only).&amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;2) 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&#039;t have to access the item each time to find out what&#039;s assigned to it. Make sure you only allow a single exposed item.&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;3) Show Cookie Consent (Plugin)&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must haves: PHP, XML&amp;lt;br&amp;gt;Nice to have: Joomla MVC&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
====Project VI: Joomla 4 Accessibility ====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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.&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;HTML, CSS, PHP, Accessibility&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586471</id>
		<title>GSOC 2019 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586471"/>
		<updated>2019-01-09T10:51:45Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Welcome to Joomla GSoC 2019 Projects page ==&lt;br /&gt;
{{tip|title=The application for students is going to open soon!}} &lt;br /&gt;
&lt;br /&gt;
Welcome to the [[GSoC_2019|Joomla Google Summer of Code (GSoC) 2019]] projects page. &lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google]. We strongly encourage you to ask questions about process and projects on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list] and join our public Glip / RingCentral chat tool.&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|250px|center|link=GSoC 2019]]&lt;br /&gt;
&lt;br /&gt;
GSoC 2019 projects (in no particular order)&lt;br /&gt;
----&lt;br /&gt;
====Project I: Webservices in Joomla ====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Continue the work done on implementing Webervices in Joomla 4 building on the two last years GSoC projects.&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;1. Integrate existing webservices stack with the existing MVC layer - so minimal error handling&amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;2. Continue work on the entities layer in Joomla (basically a new MVC layer for Joomla that is more&lt;br /&gt;
          webservices friendly and better error handling and concept of relations etc etc etc)&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:george.wilson@community.joomla.org George Wilson]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project II: New frontend template: Page-builder====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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 a index.php and template.xml that can be rebuilt based on a GUI component in the backend.&amp;lt;br&amp;gt; Depending on status of webservices might be a com_ajax plugin and template. This project is aimed at multiple students and multiple GSoC editions.&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, HTML, VueJS, JavaScript&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project III: Automatic installation of Joomla patch updates (Optional)====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Joomla currently has 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).&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Auto-updater for Joomla 4&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must haves: PHP, curl&amp;lt;br&amp;gt;Nice to have: libsodium, GPG, Joomla MVC&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:yves.hoppe@community.joomla.org Yves Hoppe], [mailto:robert.deutz@community.joomla.org Robert Deutz]&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project IV: Joomla SEO Improvements====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;CORE PART Yoast style integration in core:&amp;lt;br&amp;gt;(SEO, og), Metadata SEO: Schema.org (Basic Editing), Open Graph, Custom title (com_content), Custom meta tags (like twitter:card)&amp;lt;br&amp;gt;CORE SUPPORTED EXTENSION: Google Tools (see:      https://www.searchenginejournal.com/google-introduces-wordpress-plugin-with-integrated-analytics-search-console-more/282385/)&amp;lt;br&amp;gt;- basically google analytics integration&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must have: PHP&amp;lt;br&amp;gt;Nice to have: Joomla MVC, Search Engine Optimization (SEO), Analytics&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:christopher.wagner@community.joomla.org Christopher Wagner], [mailto: rowan.hoskyns-abrahall@community.joomla.org &lt;br /&gt;
 Rowan Hoskyns Abrahall]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project V: Joomla 4 Feature Enhancements====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;1) Placing modules on a page (in the menu item form) is tedious atm. Ability to change the module menu assignment in the menu item (menu module assignment tab, currently read only).&amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;2) 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&#039;t have to access the item each time to find out what&#039;s assigned to it. Make sure you only allow a single exposed item.&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;3) Show Cookie Consent (Plugin)&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must haves: PHP, XML&amp;lt;br&amp;gt;Nice to have: Joomla MVC&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
====Project VI: Joomla 4 Accessibility ====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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.&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;HTML, CSS, PHP, Accessibility&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSoC_2019&amp;diff=586470</id>
		<title>GSoC 2019</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSoC_2019&amp;diff=586470"/>
		<updated>2019-01-09T10:48:54Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|250px|left|]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== Welcome to Joomla Google Summer of Code 2019 ==&lt;br /&gt;
This page will aim to be a general informational page for students, mentors and others interested in Joomla&#039;s Google Summer of Code Program.&lt;br /&gt;
&lt;br /&gt;
Joomla GSoC Admins 2019: [mailto:puneet.kala@community.joomla.org Puneet Kala (Lead)], [mailto:sandra.decoux@community.joomla.org Sandra Decoux], [mailto:yves.hoppe@community.joomla.org Yves Hoppe], [mailto:tobias.zulauf@community.joomla.org Tobias Zulauf]&lt;br /&gt;
&lt;br /&gt;
{{tip|title=Make sure to check out the [[GSOC 2019 Project Ideas|2019 project list]]}} &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== What is GSoC? ===&lt;br /&gt;
Google Summer of Code is a program run by Google for college students interested in getting a stipend to contribute to Open Source Software. They will spend their summer with improving and writing new features for the project. [https://summerofcode.withgoogle.com/ Visit the Google Summer of Code website to learn more.]&lt;br /&gt;
&lt;br /&gt;
*[https://summerofcode.withgoogle.com/how-it-works/#timeline Google Summer of Code Timeline]&lt;br /&gt;
*[[GSOC_2016_Joomla_GIT_Workflow|Github Work Flow for GSoC Students and Mentors]]&lt;br /&gt;
*[https://volunteers.joomla.org/teams/google-summer-of-code-joomla-team Joomla GSoC Team on Joomla Volunteers Portal]&lt;br /&gt;
&lt;br /&gt;
Last years projects:&lt;br /&gt;
&lt;br /&gt;
*[https://summerofcode.withgoogle.com/archive/2018/organizations/6484151049912320/ Google Summer of Code for Joomla! 2018]&lt;br /&gt;
&lt;br /&gt;
== Information For Students ==&lt;br /&gt;
* [[GSOC 2019 Project Ideas|Joomla&#039;s project list]]&lt;br /&gt;
* [[GSoC Student Selection Criteria]]&lt;br /&gt;
* [[GSoC Student Application Template]]&lt;br /&gt;
* [https://groups.google.com/forum/?hl=en#!forum/jgsoc Joomla GSoC Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-cms General Joomla CMS Developer Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-framework Joomla Framework Mailing List]&lt;br /&gt;
&lt;br /&gt;
== Information For Mentors and Proposals ==&lt;br /&gt;
* [[GSOC Ideas Selection Criteria]]&lt;br /&gt;
&lt;br /&gt;
== General information ==&lt;br /&gt;
* [https://docs.joomla.org/GSOC_2016_Joomla_GIT_Workflow Github Work Flow for GSoC Students and Mentors]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== CMS or Framework? =====&lt;br /&gt;
Joomla developers are currently working on multiple projects: the Joomla CMS main 3.x Version and the upcoming new major version 4.0 (2019-2020). Additionally there are many side projects related to testing, Docker, core extensions and other things.&lt;br /&gt;
&lt;br /&gt;
The Joomla CMS is the very popular and well known FOSS content management system powering currently around 3-4 % of the internet. The Framework existed within the CMS as a tightly coupled set of utility packages and classes.&lt;br /&gt;
&lt;br /&gt;
The project supports all of these initiatives, as does Google Summer of Code. On our [http://docs.joomla.org/GSOC_2019_Project_Ideas ideas list] you will find projects related. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Timeline =====&lt;br /&gt;
The GSoC 2019 time line is available on the GSoC Site, we suggest you to go through it [https://summerofcode.withgoogle.com/how-it-works/#timeline GSoC 2019 Timeline]&lt;br /&gt;
&lt;br /&gt;
===== Project Proposal =====&lt;br /&gt;
Please check the [[GSoC Student Application Template]] to understand what we are expecting from your proposal.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Information for Mentors==&lt;br /&gt;
*Want to be a mentor? Please check the [[GSoC Mentor Guidelines]].&lt;br /&gt;
*[[GSoC Mentors Selection Criteria]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Related Articles==&lt;br /&gt;
====Google Summer of Code 2018:====&lt;br /&gt;
*[https://community.joomla.org/gsoc-2018.html Joomla GSoC 2018 blog articles.]&lt;br /&gt;
&lt;br /&gt;
====Google Summer of Code 2017:====&lt;br /&gt;
*[https://community.joomla.org/gsoc-2017.html Joomla GSoC 2017 blog articles.]&lt;br /&gt;
&lt;br /&gt;
====Google Summer of Code 2016:====&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-sep-2016/item/3129-gsoc-every-story-has-an-ending-every-ending-is-a-new-beginning GSoC: Every Story Has An Ending. Every Ending Is A New Beginning.]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3143-the-brains-behind-joomla-gsoc The brains behind the Joomla! GSoC projects]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3152-gsoc-student-ruchiranga-wickramasinghe Interview with one of the 2016 students Ruchiranga Wickramasinghe]&lt;br /&gt;
*[http://magazine.joomla.org/issues/issue-feb-2016/item/2964-joomla-s-google-summer-of-code-gsoc-is-proud-to-announce-team-lead-puneet-kala Joomla&#039;s Google Summer of Code (GSoC) is Proud to Announce Team Lead: Puneet Kala]&lt;br /&gt;
*[http://community.joomla.org/blogs/community/1894-joomla-has-been-selected-as-a-google-summer-of-code-2016-mentor-organization.html Joomla! has been selected as a Google Summer of Code 2016 mentor organization]&lt;br /&gt;
*[https://community.joomla.org/gsoc-2016/3070-joomla-google-mentor-summit-gsoc16.html Joomla! is going to the 2016 Google Summer of Code Mentor Summit]&lt;br /&gt;
*[https://magazine.joomla.org/site/itemlist/tag/Google%20Summer%20of%20Code Articles on Joomla Community Magazine]&lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2018_Project_Ideas&amp;diff=586469</id>
		<title>GSOC 2018 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2018_Project_Ideas&amp;diff=586469"/>
		<updated>2019-01-09T09:46:39Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Welcome to GSoC 2018 Ideas Page ==&lt;br /&gt;
Welcome to the [[GSOC_2018|Joomla Google Summer of Code (GSoC) 2018 project]] ideas page. As we move forward with the 2018 version of the Joomla GSoC, we will update this site with the ideas that have been submitted below.&lt;br /&gt;
&lt;br /&gt;
Please keep in mind that projects need to be realistic and something that is able to be functionally completed by a student working full time for about ten weeks.&lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google].  We strongly encourage you to ask questions about process and ideas on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list].&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|250px|center|link=GSOC 2018]]&lt;br /&gt;
&lt;br /&gt;
== Guidelines on Submitting Ideas ==&lt;br /&gt;
&lt;br /&gt;
Everyone is invited to submit their ideas! You do not have to be a Google Summer of Code student or mentor to suggest one.&lt;br /&gt;
If you have ideas for the Joomla Google Summer of Code Program please send them to us at this form: &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
::&#039;&#039;&#039;* [https://docs.google.com/forms/d/e/1FAIpQLSdHOR7WRdORUQxz7XPRGudkTebsgDNWyKtDpCyYidTM6xbGnw/viewform GSoC 2018 Idea submission form]&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
There are some important guidelines to submit ideas, please read these carefully before adding your ideas:&lt;br /&gt;
* Ensure your idea is able to be completed in a fixed period of time. GSoC runs officially &#039;&#039;&#039;between May, 2018 and August 2018.&#039;&#039;&#039; This is a short period of actual coding time. Ideas should respect the time that students have available for the program. &lt;br /&gt;
* Keep ideas realistic. The ideas on this list should maintain a realistic amount of work for a single student, junior level-developer, who is working with a compressed timeline and a fixed completion (&#039;pencils down&#039;) date. &lt;br /&gt;
* The purpose of GSoC is to improve Joomla. This is not the time to add ideas for new extensions or features that may not be included. If the idea is related to the framework, please consult the framework team directly about new ideas to ensure there is interest in having the package included as an official Joomla Framework package. &lt;br /&gt;
* When in doubt, reach out. If you&#039;re unsure if your idea belongs on this list, please post to the Joomla GSoC mailing list and ask about the community&#039;s interest. &lt;br /&gt;
* No documentation-focused projects. Google Summer of &#039;&#039;Code&#039;&#039; is a program about code. We expect our students to document their work, but writing documentation for Joomla as a project does not align with the goals of GSoC. &lt;br /&gt;
&lt;br /&gt;
== Idea Pool ==&lt;br /&gt;
&lt;br /&gt;
This page is going to be updated once the call for ideas is done and the projects have been chosen and approved by the production department.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
&lt;br /&gt;
====Project I: Webservices in Joomla! ====&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Continue the work done on implementing Webervices in Joomla 4 building on last years GSOC project. This will involve implementing a new Active Record Implementation for Joomla! CMS using inspiration from Laravel&#039;s Eloquent and Joomla&#039;s Model and Table class.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;There is a specification maintained at https://joomla-projects.github.io/gsoc18_webservices/?gsoc-2018/specification.md with full information of expected requirements and some project history.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, object-orientated programming, ideally some experience with the Joomla MVC stack. Before starting looking at the existing work done at https://github.com/joomla-projects/gsoc18_webservices&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:george.wilson@community.joomla.org George Wilson] &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
====Project II: Automatic Multilanguage Associations ====&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;These are the Scenarios that need to be covered as part of the project for 2018 GSoC&lt;br /&gt;
      WHEN I save a new item (article, category, menuitem,...), that is assigned to the root language&lt;br /&gt;
      THEN All items of this type for the other installed languages are created including their associations&lt;br /&gt;
      AND put in the right place (Category, Menutree)&lt;br /&gt;
&lt;br /&gt;
      WHEN installing a new Content Language, &lt;br /&gt;
      THEN Associated Menuitems, Categories and Articles are created automatically&lt;br /&gt;
&lt;br /&gt;
      WHEN I access the Association Component&lt;br /&gt;
      THEN I have a better overview of the current state&lt;br /&gt;
      AND I can access global Parameters&lt;br /&gt;
&lt;br /&gt;
      ONTOP:&lt;br /&gt;
      - I can define for every Content Language a Fallback language&lt;br /&gt;
      - I can switch a Website from en-GB to en-US or de-DE to de-AT without recreating items or without switching them one by one&lt;br /&gt;
      - Language Associations for Modules and Tags&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;A better Workflow on Multilanguage sites&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, Joomla Plugins, object-orientated programming, ideally some experience with the Joomla and Multilingual Associations.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:elisa.foltyn@community.joomla.org Elisa Foltyn] &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
====Project III: Improve override management ====&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;As it is an overall target to simplify the layouts in Joomla and push people to do overrides. Joomla needs a better override management.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;- Diff viewer between the override and the actual template file.&lt;br /&gt;
- Check on upgrades if a template file has changed where an override exists and inform the user.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, Joomla MVC, Javascript&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:info@digital-peak.com Allon Moritz], [mailto:astrid.guenther@community.joomla.org Astrid Guenther]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
====Project IV: System Testing for Joomla 4 with increased coverage ====&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Increase the test coverage for Joomla 4, write Automation tests in Codeception for Headless Chrome and latest version of Selenium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Increased Code Coverage for Joomla 4, Tests should be integrated with CI tool, Task Runner and Reporting should work&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, Selenium, Codeception, Robo Task Runner, Dockers&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:kala.puneet@community.joomla.org Puneet Kala] &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
====Project V: Command Line Update  ====&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Update Joomla and components via command line&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Programatically update joomla via ssh so you can have scripts to batch update site without the need to log in to every site administrator. https://github.com/joomla-projects/cli-update&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, Joomla CMS&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:marco.dings@community.joomla.org Marco Dings] &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
====Project VI: Enhance Users  ====&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;The user component contains some old code which needs to be adapted to the current Joomla standard. Additionally it would be nice to have a front end list view for user groups and and detail menu item for user. Similar to the rest of the Joomla components.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;The user component should get two new front end views for a list of users and the details of one (similar to the ones from com_contact). Additionally some views should be adapted to Joomla standards, for example the profile view.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, Joomla CMS&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:benjamin@benjamintrenkle.de Benjamin Trenkle] &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
====Project VII: Media Manager - Adaptive Images  ====&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Since content is viewed on very different devices with very different sizes and resolutions, it is not sufficient to provide one single format of an image. There are a lot of approaches for resizing images to fit the current environment, but that does not always lead to good results.The idea with this project is to let the user define the important areas of the image for different resolutions and aspect ratios. A 2-page description with examples exists.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;An editor as extension to the media manager (or as a field type), A re-usable PHP class for cropping and resizing, A plugin to remap image references to the resize script&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Javascript, PHP&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:nbraczek@bsds.de Niels Braczek] &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
[[Category:Google Summer of Code 2018]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586468</id>
		<title>GSOC 2019 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586468"/>
		<updated>2019-01-09T09:11:54Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Welcome to Joomla GSoC 2019 Projects page ==&lt;br /&gt;
{{tip|title=The application for students is going to open soon!}} &lt;br /&gt;
&lt;br /&gt;
Welcome to the [[GSoC_2019|Joomla Google Summer of Code (GSoC) 2019]] project page. &lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google]. We strongly encourage you to ask questions about process and projects on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list] and join our public Glip / Ringcentral chat tool.&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|250px|center|link=GSoC 2019]]&lt;br /&gt;
&lt;br /&gt;
GSoC 2019 projects (in no particular order)&lt;br /&gt;
----&lt;br /&gt;
====Project I: Webservices in Joomla ====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Continue the work done on implementing Webervices in Joomla 4 building on the two last years GSoC projects.&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;1. Integrate existing webservices stack with the existing MVC layer - so minimal error handling&amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;2. Continue work on the entities layer in Joomla (basically a new MVC layer for Joomla that is more&lt;br /&gt;
          webservices friendly and better error handling and concept of relations etc etc etc)&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:george.wilson@community.joomla.org George Wilson]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project II: New frontend template: Page-builder====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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 a index.php and template.xml that can be rebuilt based on a GUI component in the backend.&amp;lt;br&amp;gt; Depending on status of webservices might be a com_ajax plugin and template. This project is aimed at multiple students and multiple GSoC editions.&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, HTML, VueJS, JavaScript&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project III: Automatic installation of Joomla patch updates (Optional)====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Joomla currently has 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).&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Auto-updater for Joomla 4&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must haves: PHP, curl&amp;lt;br&amp;gt;Nice to have: libsodium, GPG, Joomla MVC&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:yves.hoppe@community.joomla.org Yves Hoppe], [mailto:robert.deutz@community.joomla.org Robert Deutz]&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project IV: Joomla SEO Improvements====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;CORE PART Yoast style integration in core:&amp;lt;br&amp;gt;(SEO, og), Metadata SEO: Schema.org (Basic Editing), Open Graph, Custom title (com_content), Custom meta tags (like twitter:card)&amp;lt;br&amp;gt;CORE SUPPORTED EXTENSION: Google Tools (see:      https://www.searchenginejournal.com/google-introduces-wordpress-plugin-with-integrated-analytics-search-console-more/282385/)&amp;lt;br&amp;gt;- basically google analytics integration&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must have: PHP&amp;lt;br&amp;gt;Nice to have: Joomla MVC, Search Engine Optimization (SEO), Analytics&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:christopher.wagner@community.joomla.org Christopher Wagner]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project V: Joomla 4 Feature Enhancements====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;1) Placing modules on a page (in the menu item form) is tedious atm. Ability to change the module menu assignment in the menu item (menu module assignment tab, currently read only).&amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;2) 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&#039;t have to access the item each time to find out what&#039;s assigned to it. Make sure you only allow a single exposed item.&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;3) Show Cookie Consent (Plugin)&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must haves: PHP, XML&amp;lt;br&amp;gt;Nice to have: Joomla MVC&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
====Project VI: Joomla 4 Accessibility ====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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.&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;HTML, CSS, PHP, Accessibility&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586467</id>
		<title>GSOC 2019 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586467"/>
		<updated>2019-01-09T09:11:25Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: /* Project V: Joomla 4 Feature Enhancements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Welcome to Joomla GSoC 2019 Projects page ==&lt;br /&gt;
{{tip|title=The application for students is going to open soon!}} &lt;br /&gt;
&lt;br /&gt;
Welcome to the [[GSoC_2019|Joomla Google Summer of Code (GSoC) 2019]] project page. &lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google]. We strongly encourage you to ask questions about process and projects on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list] and join our public Glip / Ringcentral chat tool.&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|250px|center|link=GSoC 2019]]&lt;br /&gt;
&lt;br /&gt;
GSoC 2019 projects (in no particular order)&lt;br /&gt;
&lt;br /&gt;
====Project I: Webservices in Joomla ====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Continue the work done on implementing Webervices in Joomla 4 building on the two last years GSoC projects.&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;1. Integrate existing webservices stack with the existing MVC layer - so minimal error handling&amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;2. Continue work on the entities layer in Joomla (basically a new MVC layer for Joomla that is more&lt;br /&gt;
          webservices friendly and better error handling and concept of relations etc etc etc)&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:george.wilson@community.joomla.org George Wilson]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project II: New frontend template: Page-builder====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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 a index.php and template.xml that can be rebuilt based on a GUI component in the backend.&amp;lt;br&amp;gt; Depending on status of webservices might be a com_ajax plugin and template. This project is aimed at multiple students and multiple GSoC editions.&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, HTML, VueJS, JavaScript&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project III: Automatic installation of Joomla patch updates (Optional)====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Joomla currently has 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).&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Auto-updater for Joomla 4&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must haves: PHP, curl&amp;lt;br&amp;gt;Nice to have: libsodium, GPG, Joomla MVC&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:yves.hoppe@community.joomla.org Yves Hoppe], [mailto:robert.deutz@community.joomla.org Robert Deutz]&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project IV: Joomla SEO Improvements====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;CORE PART Yoast style integration in core:&amp;lt;br&amp;gt;(SEO, og), Metadata SEO: Schema.org (Basic Editing), Open Graph, Custom title (com_content), Custom meta tags (like twitter:card)&amp;lt;br&amp;gt;CORE SUPPORTED EXTENSION: Google Tools (see:      https://www.searchenginejournal.com/google-introduces-wordpress-plugin-with-integrated-analytics-search-console-more/282385/)&amp;lt;br&amp;gt;- basically google analytics integration&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must have: PHP&amp;lt;br&amp;gt;Nice to have: Joomla MVC, Search Engine Optimization (SEO), Analytics&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:christopher.wagner@community.joomla.org Christopher Wagner]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project V: Joomla 4 Feature Enhancements====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;1) Placing modules on a page (in the menu item form) is tedious atm. Ability to change the module menu assignment in the menu item (menu module assignment tab, currently read only).&amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;2) 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&#039;t have to access the item each time to find out what&#039;s assigned to it. Make sure you only allow a single exposed item.&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;3) Show Cookie Consent (Plugin)&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must haves: PHP, XML&amp;lt;br&amp;gt;Nice to have: Joomla MVC&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
====Project VI: Joomla 4 Accessibility ====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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.&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;HTML, CSS, PHP, Accessibility&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586466</id>
		<title>GSOC 2019 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2019_Project_Ideas&amp;diff=586466"/>
		<updated>2019-01-09T09:09:51Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Preparing GSoC 2019&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Welcome to Joomla GSoC 2019 Projects page ==&lt;br /&gt;
{{tip|title=The application for students is going to open soon!}} &lt;br /&gt;
&lt;br /&gt;
Welcome to the [[GSoC_2019|Joomla Google Summer of Code (GSoC) 2019]] project page. &lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google]. We strongly encourage you to ask questions about process and projects on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list] and join our public Glip / Ringcentral chat tool.&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|250px|center|link=GSoC 2019]]&lt;br /&gt;
&lt;br /&gt;
GSoC 2019 projects (in no particular order)&lt;br /&gt;
&lt;br /&gt;
====Project I: Webservices in Joomla ====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Continue the work done on implementing Webervices in Joomla 4 building on the two last years GSoC projects.&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;1. Integrate existing webservices stack with the existing MVC layer - so minimal error handling&amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;2. Continue work on the entities layer in Joomla (basically a new MVC layer for Joomla that is more&lt;br /&gt;
          webservices friendly and better error handling and concept of relations etc etc etc)&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:george.wilson@community.joomla.org George Wilson]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project II: New frontend template: Page-builder====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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 a index.php and template.xml that can be rebuilt based on a GUI component in the backend.&amp;lt;br&amp;gt; Depending on status of webservices might be a com_ajax plugin and template. This project is aimed at multiple students and multiple GSoC editions.&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, HTML, VueJS, JavaScript&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project III: Automatic installation of Joomla patch updates (Optional)====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Joomla currently has 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).&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Auto-updater for Joomla 4&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must haves: PHP, curl&amp;lt;br&amp;gt;Nice to have: libsodium, GPG, Joomla MVC&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:yves.hoppe@community.joomla.org Yves Hoppe], [mailto:robert.deutz@community.joomla.org Robert Deutz]&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project IV: Joomla SEO Improvements====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;CORE PART Yoast style integration in core:&amp;lt;br&amp;gt;(SEO, og), Metadata SEO: Schema.org (Basic Editing), Open Graph, Custom title (com_content), Custom meta tags (like twitter:card)&amp;lt;br&amp;gt;CORE SUPPORTED EXTENSION: Google Tools (see:      https://www.searchenginejournal.com/google-introduces-wordpress-plugin-with-integrated-analytics-search-console-more/282385/)&amp;lt;br&amp;gt;- basically google analytics integration&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Must have: PHP&amp;lt;br&amp;gt;Nice to have: Joomla MVC, Search Engine Optimization (SEO), Analytics&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:christopher.wagner@community.joomla.org Christopher Wagner]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project V: Joomla 4 Feature Enhancements====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;&lt;br /&gt;
      &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;1) Placing modules on a page (in the menu item form) is tedious atm. Ability to change the module menu assignment in the menu item (menu module assignment tab, currently read only).&amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;2) 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&#039;t have to access the item each time to find out what&#039;s assigned to it. Make sure you only allow a single exposed item.&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;3) Show Cookie Consent (Plugin)&lt;br /&gt;
        &amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, XML &amp;lt;br&amp;gt;&lt;br /&gt;
      Nice to have: Joomla MVC&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
====Project VI: Joomla 4 Accessibility ====&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;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.&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;HTML, CSS, PHP, Accessibility&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSoC_2019&amp;diff=586465</id>
		<title>GSoC 2019</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSoC_2019&amp;diff=586465"/>
		<updated>2019-01-09T08:38:08Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Preparing GSoC 2019&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|250px|left|]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== Welcome to Joomla Google Summer of Code 2019 ==&lt;br /&gt;
This page will aim to be a general informational page for students, mentors and others interested in Joomla&#039;s Google Summer of Code Program.&lt;br /&gt;
&lt;br /&gt;
Joomla GSoC Admins 2019: [mailto:puneet.kala@community.joomla.org Puneet Kala (Lead)], [mailto:sandra.decoux@community.joomla.org Sandra Decoux], [mailto:yves.hoppe@community.joomla.org Yves Hoppe], [mailto:tobias.zulauf@community.joomla.org Tobias Zulauf]&lt;br /&gt;
&lt;br /&gt;
=== What is GSoC? ===&lt;br /&gt;
Google Summer of Code is a program run by Google for college students interested in getting a stipend to contribute to Open Source Software. They will spend their summer with improving and writing new features for the project. [https://summerofcode.withgoogle.com/ Visit the Google Summer of Code website to learn more.]&lt;br /&gt;
&lt;br /&gt;
*[https://summerofcode.withgoogle.com/how-it-works/#timeline Google Summer of Code Timeline]&lt;br /&gt;
*[[GSOC_2016_Joomla_GIT_Workflow|Github Work Flow for GSoC Students and Mentors]]&lt;br /&gt;
*[https://volunteers.joomla.org/teams/google-summer-of-code-joomla-team Joomla GSoC Team on Joomla Volunteers Portal]&lt;br /&gt;
&lt;br /&gt;
Last years projects:&lt;br /&gt;
&lt;br /&gt;
*[https://summerofcode.withgoogle.com/archive/2018/organizations/6484151049912320/ Google Summer of Code for Joomla! 2018]&lt;br /&gt;
&lt;br /&gt;
== Information For Students ==&lt;br /&gt;
* [[GSOC 2019 Project Ideas|Joomla&#039;s project idea list]]&lt;br /&gt;
* [[GSoC Student Selection Criteria]]&lt;br /&gt;
* [[GSoC Student Application Template]]&lt;br /&gt;
* [https://groups.google.com/forum/?hl=en#!forum/jgsoc Joomla GSoC Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-cms General Joomla CMS Developer Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-framework Joomla Framework Mailing List]&lt;br /&gt;
&lt;br /&gt;
== Information For Mentors and Proposals ==&lt;br /&gt;
* [[GSOC Ideas Selection Criteria]]&lt;br /&gt;
&lt;br /&gt;
== General information ==&lt;br /&gt;
* [https://docs.joomla.org/GSOC_2016_Joomla_GIT_Workflow Github Work Flow for GSoC Students and Mentors]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== CMS or Framework? =====&lt;br /&gt;
Joomla developers are currently working on multiple projects: the Joomla CMS main 3.x Version and the upcoming new major version 4.0 (2019-2020). Additionally there are many side projects related to testing, Docker, core extensions and other things.&lt;br /&gt;
&lt;br /&gt;
The Joomla CMS is the very popular and well known FOSS content management system powering currently around 3-4 % of the internet. The Framework existed within the CMS as a tightly coupled set of utility packages and classes.&lt;br /&gt;
&lt;br /&gt;
The project supports all of these initiatives, as does Google Summer of Code. On our [http://docs.joomla.org/GSOC_2019_Project_Ideas ideas list] you will find projects related. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Timeline =====&lt;br /&gt;
The GSoC 2019 time line is available on the GSoC Site, we suggest you to go through it [https://summerofcode.withgoogle.com/how-it-works/#timeline GSoC 2019 Timeline]&lt;br /&gt;
&lt;br /&gt;
===== Project Proposal =====&lt;br /&gt;
Please check the [[GSoC Student Application Template]] to understand what we are expecting from your proposal.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Information for Mentors==&lt;br /&gt;
*Want to be a mentor? Please check the [[GSoC Mentor Guidelines]].&lt;br /&gt;
*[[GSoC Mentors Selection Criteria]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Related Articles==&lt;br /&gt;
====Google Summer of Code 2018:====&lt;br /&gt;
*[https://community.joomla.org/gsoc-2018.html Joomla GSoC 2018 blog articles.]&lt;br /&gt;
&lt;br /&gt;
====Google Summer of Code 2017:====&lt;br /&gt;
*[https://community.joomla.org/gsoc-2017.html Joomla GSoC 2017 blog articles.]&lt;br /&gt;
&lt;br /&gt;
====Google Summer of Code 2016:====&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-sep-2016/item/3129-gsoc-every-story-has-an-ending-every-ending-is-a-new-beginning GSoC: Every Story Has An Ending. Every Ending Is A New Beginning.]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3143-the-brains-behind-joomla-gsoc The brains behind the Joomla! GSoC projects]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3152-gsoc-student-ruchiranga-wickramasinghe Interview with one of the 2016 students Ruchiranga Wickramasinghe]&lt;br /&gt;
*[http://magazine.joomla.org/issues/issue-feb-2016/item/2964-joomla-s-google-summer-of-code-gsoc-is-proud-to-announce-team-lead-puneet-kala Joomla&#039;s Google Summer of Code (GSoC) is Proud to Announce Team Lead: Puneet Kala]&lt;br /&gt;
*[http://community.joomla.org/blogs/community/1894-joomla-has-been-selected-as-a-google-summer-of-code-2016-mentor-organization.html Joomla! has been selected as a Google Summer of Code 2016 mentor organization]&lt;br /&gt;
*[https://community.joomla.org/gsoc-2016/3070-joomla-google-mentor-summit-gsoc16.html Joomla! is going to the 2016 Google Summer of Code Mentor Summit]&lt;br /&gt;
*[https://magazine.joomla.org/site/itemlist/tag/Google%20Summer%20of%20Code Articles on Joomla Community Magazine]&lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code 2019]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2017&amp;diff=470111</id>
		<title>GSOC 2017</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2017&amp;diff=470111"/>
		<updated>2017-11-24T08:04:00Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|250px|left|link=GSOC 2016]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== Welcome to Google Summer of Code 2017 ==&lt;br /&gt;
This page will aim to be a general informational page for students, mentors and others interested in Joomla&#039;s Google Summer of Code Program.&lt;br /&gt;
&lt;br /&gt;
Joomla GSoC Admins 2017: [mailto:puneet.kala@community.joomla.org Puneet Kala (Lead)], [mailto:sandra.decoux@community.joomla.org Sandra Decoux], [mailto:yves.hoppe@community.joomla.org Yves Hoppe]&lt;br /&gt;
&lt;br /&gt;
{{tip|title= GSoC 2017 is over. Go to [[GSOC_2018| GSoC 2018]] for news!}}&lt;br /&gt;
&lt;br /&gt;
=== What is GSoC? ===&lt;br /&gt;
Google Summer of Code is a program run by Google for college students interested in getting a stipend to contribute to FOSS projects. They will spend there summer with improving and writing new features for the project. [https://developers.google.com/open-source/gsoc/ Visit the Google Summer of Code site to learn more.]&lt;br /&gt;
&lt;br /&gt;
*[https://developers.google.com/open-source/gsoc/timeline Google Summer of Code Timeline]&lt;br /&gt;
*[[GSOC_2016_Joomla_GIT_Workflow|Github Work Flow for GSoC Students and Mentors]]&lt;br /&gt;
*[https://volunteers.joomla.org/working-groups/google-summer-of-code-joomla-team GSoC Team on Joomla Volunteers Portal]&lt;br /&gt;
&lt;br /&gt;
Last years projects:&lt;br /&gt;
&lt;br /&gt;
*[https://summerofcode.withgoogle.com/organizations/5660160231997440/ Google Summer of Code for Joomla! Project 2016]&lt;br /&gt;
&lt;br /&gt;
== Information For Students ==&lt;br /&gt;
* [[GSOC 2017 Project Ideas|Joomla&#039;s Idea List]]&lt;br /&gt;
* [[GSoC 2017 Student Selection Criteria]]&lt;br /&gt;
* [[GSoC 2017 Student Application Template]]&lt;br /&gt;
* [[GSOC 2017 Ideas Selection Criteria]]&lt;br /&gt;
* [https://docs.google.com/forms/d/e/1FAIpQLSd8up4QNOwkY9It0sHVJ-bfCXaam2p7OUuSZSCiW4U4Ywq-Rg/viewform GSoC 2017 Idea submission form]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/jgsoc2017 Joomla GSoC Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-cms General Joomla CMS Developer Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-framework Joomla Framework Mailing List]&lt;br /&gt;
* [https://docs.joomla.org/GSOC_2016_Joomla_GIT_Workflow Github Work Flow for GSoC Students and Mentors]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== CMS or Framework? =====&lt;br /&gt;
Joomla developers are currently working on multiple projects: the Joomla CMS (Version 3.7 (Q2 2017), Version 3.8 (2017) and Version 4 (2017-2018). Additionally there are many side projects related to testing, Docker, core extensions and other projects.&lt;br /&gt;
&lt;br /&gt;
The CMS is the very popular and well known FOSS content management system. The Framework existed within the CMS as a tightly coupled set of utility packages and classes. Eventually developers decided they wanted to work with just those utilities and write new applications not coupled to the CMS. The Joomla Issue Tracker is the first Application built on top of the new Joomla Framework and is currently nearing it&#039;s first stable release.&lt;br /&gt;
&lt;br /&gt;
The project supports all of these initiatives, as does Google Summer of Code. On our [http://docs.joomla.org/GSOC_2017_Project_Ideas ideas list] you will find projects related. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Timeline =====&lt;br /&gt;
GSoC 2017 Timeline is available on the GSoC Site, we suggest you to go through it [https://developers.google.com/open-source/gsoc/timeline?hl=en GSoC-17 Timelines]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--For a Joomla GSoC student, there are two timelines that a student must be aware of as they are developing their project plan. The first is Google&#039;s own timeline] UPDATE WHEN AVAILABLE. But, because the Joomla CMS has its own specified release cycle, there is also a strong need to be aware of the Joomla release cycle.&lt;br /&gt;
&lt;br /&gt;
To assist in planning a project timeline we have compiled a suggested list of dates and deadlines for students. This includes requirements for all GSoC projects. Please submit a timeline that includes these key deadlines with your project proposal. It is not essential that you follow the same dates listed on the sample timeline, however you must include the milestones and an expected / planned deadline for each milestone.&lt;br /&gt;
&lt;br /&gt;
If you would prefer to subscribe to the Joomla GSoC 2016 Google Calendar, you may do so here:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
UPDATE WHEN AVAILABLE&lt;br /&gt;
[https://www.google.com/calendar/embed?src=t2cvl5q9gm4nsgfckvtvnsopgc%40group.calendar.google.com&amp;amp;ctz=America/Chicago Joomla GSoC 2014 Google Calendar]&lt;br /&gt;
&amp;lt;div class=&amp;quot;calendar-container&amp;quot;&amp;gt;&lt;br /&gt;
{{#widget:Google Calendar&lt;br /&gt;
|id=t2cvl5q9gm4nsgfckvtvnsopgc@group.calendar.google.com&lt;br /&gt;
|view=agenda&lt;br /&gt;
|title=Joomla! GSOC Calendar&lt;br /&gt;
|showcals=false # There is only one, so hide the drop tab #&lt;br /&gt;
}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTE: The above timeline will be updated as more information becomes available, so you may want to subscribe to the calendar using the above +Google Calendar button. --&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Proposal =====&lt;br /&gt;
Please check the [[GSoC Student Application Template]] to understand what we are expecting from your proposal. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Information for Mentors==&lt;br /&gt;
*Want to be a mentor? Please check the [[GSoC Mentor Guidelines]].&lt;br /&gt;
*[[GSoC 2017 Mentors Selection Criteria]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Related Articles==&lt;br /&gt;
&lt;br /&gt;
Last Google Summer of Code 2016:&lt;br /&gt;
&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-sep-2016/item/3129-gsoc-every-story-has-an-ending-every-ending-is-a-new-beginning GSoC: Every Story Has An Ending. Every Ending Is A New Beginning.]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3143-the-brains-behind-joomla-gsoc The brains behind the Joomla! GSoC projects]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3152-gsoc-student-ruchiranga-wickramasinghe Interview with one of the 2016 students Ruchiranga Wickramasinghe]&lt;br /&gt;
*[http://magazine.joomla.org/issues/issue-feb-2016/item/2964-joomla-s-google-summer-of-code-gsoc-is-proud-to-announce-team-lead-puneet-kala Joomla&#039;s Google Summer of Code (GSoC) is Proud to Announce Team Lead: Puneet Kala]&lt;br /&gt;
*[http://community.joomla.org/blogs/community/1894-joomla-has-been-selected-as-a-google-summer-of-code-2016-mentor-organization.html Joomla! has been selected as a Google Summer of Code 2016 mentor organization]&lt;br /&gt;
*[https://community.joomla.org/gsoc-2016/3070-joomla-google-mentor-summit-gsoc16.html Joomla! is going to the 2016 Google Summer of Code Mentor Summit]&lt;br /&gt;
*[https://magazine.joomla.org/site/itemlist/tag/Google%20Summer%20of%20Code Articles on Joomla Community Magazine]&lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code 2017]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2017&amp;diff=470110</id>
		<title>GSOC 2017</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2017&amp;diff=470110"/>
		<updated>2017-11-24T07:59:08Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: /* Welcome to Google Summer of Code 2017 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|250px|left|link=GSOC 2016]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== Welcome to Google Summer of Code 2017 ==&lt;br /&gt;
This page will aim to be a general informational page for students, mentors and others interested in Joomla&#039;s Google Summer of Code Program.&lt;br /&gt;
&lt;br /&gt;
Joomla GSoC Admins 2017: [mailto:puneet.kala@community.joomla.org Puneet Kala (Lead)], [mailto:sandra.decoux@community.joomla.org Sandra Decoux], [mailto:yves.hoppe@community.joomla.org Yves Hoppe]&lt;br /&gt;
&lt;br /&gt;
=== What is GSoC? ===&lt;br /&gt;
Google Summer of Code is a program run by Google for college students interested in getting a stipend to contribute to FOSS projects. They will spend there summer with improving and writing new features for the project. [https://developers.google.com/open-source/gsoc/ Visit the Google Summer of Code site to learn more.]&lt;br /&gt;
&lt;br /&gt;
*[https://developers.google.com/open-source/gsoc/timeline Google Summer of Code Timeline]&lt;br /&gt;
*[[GSOC_2016_Joomla_GIT_Workflow|Github Work Flow for GSoC Students and Mentors]]&lt;br /&gt;
*[https://volunteers.joomla.org/working-groups/google-summer-of-code-joomla-team GSoC Team on Joomla Volunteers Portal]&lt;br /&gt;
&lt;br /&gt;
Last years projects:&lt;br /&gt;
&lt;br /&gt;
*[https://summerofcode.withgoogle.com/organizations/5660160231997440/ Google Summer of Code for Joomla! Project 2016]&lt;br /&gt;
&lt;br /&gt;
== Information For Students ==&lt;br /&gt;
* [[GSOC 2017 Project Ideas|Joomla&#039;s Idea List]]&lt;br /&gt;
* [[GSoC 2017 Student Selection Criteria]]&lt;br /&gt;
* [[GSoC 2017 Student Application Template]]&lt;br /&gt;
* [[GSOC 2017 Ideas Selection Criteria]]&lt;br /&gt;
* [https://docs.google.com/forms/d/e/1FAIpQLSd8up4QNOwkY9It0sHVJ-bfCXaam2p7OUuSZSCiW4U4Ywq-Rg/viewform GSoC 2017 Idea submission form]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/jgsoc2017 Joomla GSoC Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-cms General Joomla CMS Developer Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-framework Joomla Framework Mailing List]&lt;br /&gt;
* [https://docs.joomla.org/GSOC_2016_Joomla_GIT_Workflow Github Work Flow for GSoC Students and Mentors]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== CMS or Framework? =====&lt;br /&gt;
Joomla developers are currently working on multiple projects: the Joomla CMS (Version 3.7 (Q2 2017), Version 3.8 (2017) and Version 4 (2017-2018). Additionally there are many side projects related to testing, Docker, core extensions and other projects.&lt;br /&gt;
&lt;br /&gt;
The CMS is the very popular and well known FOSS content management system. The Framework existed within the CMS as a tightly coupled set of utility packages and classes. Eventually developers decided they wanted to work with just those utilities and write new applications not coupled to the CMS. The Joomla Issue Tracker is the first Application built on top of the new Joomla Framework and is currently nearing it&#039;s first stable release.&lt;br /&gt;
&lt;br /&gt;
The project supports all of these initiatives, as does Google Summer of Code. On our [http://docs.joomla.org/GSOC_2017_Project_Ideas ideas list] you will find projects related. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Timeline =====&lt;br /&gt;
GSoC 2017 Timeline is available on the GSoC Site, we suggest you to go through it [https://developers.google.com/open-source/gsoc/timeline?hl=en GSoC-17 Timelines]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--For a Joomla GSoC student, there are two timelines that a student must be aware of as they are developing their project plan. The first is Google&#039;s own timeline] UPDATE WHEN AVAILABLE. But, because the Joomla CMS has its own specified release cycle, there is also a strong need to be aware of the Joomla release cycle.&lt;br /&gt;
&lt;br /&gt;
To assist in planning a project timeline we have compiled a suggested list of dates and deadlines for students. This includes requirements for all GSoC projects. Please submit a timeline that includes these key deadlines with your project proposal. It is not essential that you follow the same dates listed on the sample timeline, however you must include the milestones and an expected / planned deadline for each milestone.&lt;br /&gt;
&lt;br /&gt;
If you would prefer to subscribe to the Joomla GSoC 2016 Google Calendar, you may do so here:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
UPDATE WHEN AVAILABLE&lt;br /&gt;
[https://www.google.com/calendar/embed?src=t2cvl5q9gm4nsgfckvtvnsopgc%40group.calendar.google.com&amp;amp;ctz=America/Chicago Joomla GSoC 2014 Google Calendar]&lt;br /&gt;
&amp;lt;div class=&amp;quot;calendar-container&amp;quot;&amp;gt;&lt;br /&gt;
{{#widget:Google Calendar&lt;br /&gt;
|id=t2cvl5q9gm4nsgfckvtvnsopgc@group.calendar.google.com&lt;br /&gt;
|view=agenda&lt;br /&gt;
|title=Joomla! GSOC Calendar&lt;br /&gt;
|showcals=false # There is only one, so hide the drop tab #&lt;br /&gt;
}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTE: The above timeline will be updated as more information becomes available, so you may want to subscribe to the calendar using the above +Google Calendar button. --&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Proposal =====&lt;br /&gt;
Please check the [[GSoC Student Application Template]] to understand what we are expecting from your proposal. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Information for Mentors==&lt;br /&gt;
*Want to be a mentor? Please check the [[GSoC Mentor Guidelines]].&lt;br /&gt;
*[[GSoC 2017 Mentors Selection Criteria]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Related Articles==&lt;br /&gt;
&lt;br /&gt;
Last Google Summer of Code 2016:&lt;br /&gt;
&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-sep-2016/item/3129-gsoc-every-story-has-an-ending-every-ending-is-a-new-beginning GSoC: Every Story Has An Ending. Every Ending Is A New Beginning.]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3143-the-brains-behind-joomla-gsoc The brains behind the Joomla! GSoC projects]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3152-gsoc-student-ruchiranga-wickramasinghe Interview with one of the 2016 students Ruchiranga Wickramasinghe]&lt;br /&gt;
*[http://magazine.joomla.org/issues/issue-feb-2016/item/2964-joomla-s-google-summer-of-code-gsoc-is-proud-to-announce-team-lead-puneet-kala Joomla&#039;s Google Summer of Code (GSoC) is Proud to Announce Team Lead: Puneet Kala]&lt;br /&gt;
*[http://community.joomla.org/blogs/community/1894-joomla-has-been-selected-as-a-google-summer-of-code-2016-mentor-organization.html Joomla! has been selected as a Google Summer of Code 2016 mentor organization]&lt;br /&gt;
*[https://community.joomla.org/gsoc-2016/3070-joomla-google-mentor-summit-gsoc16.html Joomla! is going to the 2016 Google Summer of Code Mentor Summit]&lt;br /&gt;
*[https://magazine.joomla.org/site/itemlist/tag/Google%20Summer%20of%20Code Articles on Joomla Community Magazine]&lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code 2017]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2018&amp;diff=470109</id>
		<title>GSOC 2018</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2018&amp;diff=470109"/>
		<updated>2017-11-24T07:58:27Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Added admins&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|250px|left|link=GSoC 2018]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== Welcome to Joomla Google Summer of Code 2018 ==&lt;br /&gt;
This page will aim to be a general informational page for students, mentors and others interested in Joomla&#039;s Google Summer of Code Program.&lt;br /&gt;
&lt;br /&gt;
Joomla GSoC Admins 2018: [mailto:puneet.kala@community.joomla.org Puneet Kala (Lead)], [mailto:sandra.decoux@community.joomla.org Sandra Decoux], [mailto:yves.hoppe@community.joomla.org Yves Hoppe]&lt;br /&gt;
&lt;br /&gt;
=== What is GSoC? ===&lt;br /&gt;
Google Summer of Code is a program run by Google for college students interested in getting a stipend to contribute to FOSS projects. They will spend there summer with improving and writing new features for the project. [https://developers.google.com/open-source/gsoc/ Visit the Google Summer of Code site to learn more.]&lt;br /&gt;
&lt;br /&gt;
*[https://developers.google.com/open-source/gsoc/timeline Google Summer of Code Timeline]&lt;br /&gt;
*[[GSOC_2016_Joomla_GIT_Workflow|Github Work Flow for GSoC Students and Mentors]]&lt;br /&gt;
*[https://volunteers.joomla.org/working-groups/google-summer-of-code-joomla-team GSoC Team on Joomla Volunteers Portal]&lt;br /&gt;
&lt;br /&gt;
Last years projects:&lt;br /&gt;
&lt;br /&gt;
*[https://summerofcode.withgoogle.com/organizations/5660160231997440/ Google Summer of Code for Joomla! Project 2016]&lt;br /&gt;
&lt;br /&gt;
== Information For Students ==&lt;br /&gt;
* [[GSOC 2018 Project Ideas|Joomla&#039;s project idea list]]&lt;br /&gt;
* [[GSoC Student Selection Criteria]]&lt;br /&gt;
* [[GSoC Student Application Template]]&lt;br /&gt;
* [https://groups.google.com/forum/?hl=en#!forum/jgsoc Joomla GSoC Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-cms General Joomla CMS Developer Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-framework Joomla Framework Mailing List]&lt;br /&gt;
&lt;br /&gt;
== Information For Mentors and Proposals ==&lt;br /&gt;
* [https://goo.gl/forms/8cVeLPnehDQED1Ss2 GSoC 2018 Idea submission form]&lt;br /&gt;
* [[GSOC Ideas Selection Criteria]]&lt;br /&gt;
&lt;br /&gt;
== General information ==&lt;br /&gt;
* [https://docs.joomla.org/GSOC_2016_Joomla_GIT_Workflow Github Work Flow for GSoC Students and Mentors]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== CMS or Framework? =====&lt;br /&gt;
Joomla developers are currently working on multiple projects: the Joomla CMS 3.x Version and 4.0.0 (2018-2019). Additionally there are many side projects related to testing, Docker, core extensions and other projects.&lt;br /&gt;
&lt;br /&gt;
The CMS is the very popular and well known FOSS content management system powering currently 3.2% of the internet. The Framework existed within the CMS as a tightly coupled set of utility packages and classes. Eventually developers decided they wanted to work with just those utilities and write new applications not coupled to the CMS. The Joomla Issue Tracker is the first Application built on top of the new Joomla Framework and is currently nearing it&#039;s first stable release.&lt;br /&gt;
&lt;br /&gt;
The project supports all of these initiatives, as does Google Summer of Code. On our [http://docs.joomla.org/GSOC_2018_Project_Ideas ideas list] you will find projects related. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Timeline =====&lt;br /&gt;
GSoC 2018 time line is available on the GSoC Site, we suggest you to go through it [https://developers.google.com/open-source/gsoc/timeline?hl=en GSoC-18 Timelines]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--For a Joomla GSoC student, there are two timelines that a student must be aware of as they are developing their project plan. The first is Google&#039;s own timeline] UPDATE WHEN AVAILABLE. But, because the Joomla CMS has its own specified release cycle, there is also a strong need to be aware of the Joomla release cycle.&lt;br /&gt;
&lt;br /&gt;
To assist in planning a project timeline we have compiled a suggested list of dates and deadlines for students. This includes requirements for all GSoC projects. Please submit a timeline that includes these key deadlines with your project proposal. It is not essential that you follow the same dates listed on the sample timeline, however you must include the milestones and an expected / planned deadline for each milestone.&lt;br /&gt;
&lt;br /&gt;
If you would prefer to subscribe to the Joomla GSoC 2016 Google Calendar, you may do so here:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
UPDATE WHEN AVAILABLE&lt;br /&gt;
[https://www.google.com/calendar/embed?src=t2cvl5q9gm4nsgfckvtvnsopgc%40group.calendar.google.com&amp;amp;ctz=America/Chicago Joomla GSoC 2014 Google Calendar]&lt;br /&gt;
&amp;lt;div class=&amp;quot;calendar-container&amp;quot;&amp;gt;&lt;br /&gt;
{{#widget:Google Calendar&lt;br /&gt;
|id=t2cvl5q9gm4nsgfckvtvnsopgc@group.calendar.google.com&lt;br /&gt;
|view=agenda&lt;br /&gt;
|title=Joomla! GSOC Calendar&lt;br /&gt;
|showcals=false # There is only one, so hide the drop tab #&lt;br /&gt;
}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTE: The above timeline will be updated as more information becomes available, so you may want to subscribe to the calendar using the above +Google Calendar button. --&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Proposal =====&lt;br /&gt;
Please check the [[GSoC Student Application Template]] to understand what we are expecting from your proposal.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Information for Mentors==&lt;br /&gt;
*Want to be a mentor? Please check the [[GSoC Mentor Guidelines]].&lt;br /&gt;
*[[GSoC Mentors Selection Criteria]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Related Articles==&lt;br /&gt;
====Google Summer of Code 2017:====&lt;br /&gt;
*[https://community.joomla.org/gsoc-2017.html Joomla GSoC 2017 students blog articles.]&lt;br /&gt;
&lt;br /&gt;
====Google Summer of Code 2016:====&lt;br /&gt;
&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-sep-2016/item/3129-gsoc-every-story-has-an-ending-every-ending-is-a-new-beginning GSoC: Every Story Has An Ending. Every Ending Is A New Beginning.]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3143-the-brains-behind-joomla-gsoc The brains behind the Joomla! GSoC projects]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3152-gsoc-student-ruchiranga-wickramasinghe Interview with one of the 2016 students Ruchiranga Wickramasinghe]&lt;br /&gt;
*[http://magazine.joomla.org/issues/issue-feb-2016/item/2964-joomla-s-google-summer-of-code-gsoc-is-proud-to-announce-team-lead-puneet-kala Joomla&#039;s Google Summer of Code (GSoC) is Proud to Announce Team Lead: Puneet Kala]&lt;br /&gt;
*[http://community.joomla.org/blogs/community/1894-joomla-has-been-selected-as-a-google-summer-of-code-2016-mentor-organization.html Joomla! has been selected as a Google Summer of Code 2016 mentor organization]&lt;br /&gt;
*[https://community.joomla.org/gsoc-2016/3070-joomla-google-mentor-summit-gsoc16.html Joomla! is going to the 2016 Google Summer of Code Mentor Summit]&lt;br /&gt;
*[https://magazine.joomla.org/site/itemlist/tag/Google%20Summer%20of%20Code Articles on Joomla Community Magazine]&lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code 2018]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSoC_Mentors_Selection_Criteria&amp;diff=470035</id>
		<title>GSoC Mentors Selection Criteria</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSoC_Mentors_Selection_Criteria&amp;diff=470035"/>
		<updated>2017-11-23T09:30:26Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Initial release of general version for every year!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|200px|right|link=GSOC 2018]]Mentoring a student is a great, but also a very challenging experiences. To be an effective mentor involves a lot of commitment and knowledge about the Project.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==How are mentors selected among everyone that applied as volunteer?==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
These are the most important points that we considered as criteria for the selection:&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
*&#039;&#039;&#039;Skill set and time to commit&#039;&#039;&#039;&lt;br /&gt;
::We prefer to have mentors that have the specific skills set required for the projects and someone who has been previously involved in the development community.&lt;br /&gt;
 &lt;br /&gt;
*&#039;&#039;&#039;If you understand the Idea of Google Summer of Code.&#039;&#039;&#039;&lt;br /&gt;
::It&#039;s easier for volunteers who have been previously involved in Google Summer of Code to understand what is the expectation. They have a clear idea of timelines and evaluations.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;For first timers, it is important that they are really committed to the project and deeply interested in taking the project to completion.&#039;&#039;&#039;&lt;br /&gt;
::Mentoring doesn’t involve only technical skills but also needs a lot of &#039;&#039;&#039;passion&#039;&#039;&#039;, &#039;&#039;&#039;patience&#039;&#039;&#039; and &#039;&#039;&#039;responsibility&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Preference is always given to the mentor that submitted that project idea.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code 2018]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_Ideas_Selection_Criteria&amp;diff=469207</id>
		<title>GSOC Ideas Selection Criteria</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_Ideas_Selection_Criteria&amp;diff=469207"/>
		<updated>2017-11-22T10:16:06Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Initial release&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|200px|right|link=GSOC 2018]]&lt;br /&gt;
&lt;br /&gt;
===Call for your ideas / improvements to Joomla!===&lt;br /&gt;
&lt;br /&gt;
Every year there is an open call for the community to submit ideas/improvements for the Joomla! Google Summer of Code. We always get a very good response (Thank you all!), but sometimes it is possible that some ideas do not qualify to the official Project Ideas Page.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/forms/d/e/1FAIpQLSdHOR7WRdORUQxz7XPRGudkTebsgDNWyKtDpCyYidTM6xbGnw/viewform GSoC 2018 Idea submission form]&lt;br /&gt;
&lt;br /&gt;
===Why?===&lt;br /&gt;
Here are some of the important points that should be considered before your idea submission:&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Your idea needs to be realistic.&#039;&#039;&#039;&lt;br /&gt;
::The idea may be completed within the time period of GSoC. Ideally we have just one student working on each project so the amount of work should be realistic and achievable. &lt;br /&gt;
*&#039;&#039;&#039;Technical challenges / architecture&#039;&#039;&#039;&lt;br /&gt;
::Please don&#039;t forget that you work with students. Don&#039;t underestimate their skills, but also don&#039;t overestimate them. They are mostly not experienced with Joomla! MVC and meanwhile they maybe know PHP, they could lack JavaScript knowledge etc. And don&#039;t expect them to come up with perfect architectural solutions, this would be your work!&lt;br /&gt;
*&#039;&#039;&#039;Idea should be feasible.&#039;&#039;&#039;&lt;br /&gt;
::If your idea has already been planned in the coming release of Joomla! than their are very high chances that it might not be selected, because the work is already divided and planned. &lt;br /&gt;
*&#039;&#039;&#039;Production department approves the ideas and provides feedback for all of them.&#039;&#039;&#039;&lt;br /&gt;
::If Production feels some idea is going to be not fitting into Joomla. Or is too complex and might not be implemented in the limited time we have got for GSoC, we go with the suggestion of Productoin and drop the idea.&lt;br /&gt;
*&#039;&#039;&#039;Every idea needs a mentor.&#039;&#039;&#039;&lt;br /&gt;
::There are a lot of good ideas, but if there is no available Mentor, which is able to help a student during the period of GSoC, it can&#039;t be added to the list of ideas. &lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code 2018]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2018&amp;diff=469206</id>
		<title>GSOC 2018</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2018&amp;diff=469206"/>
		<updated>2017-11-22T10:13:29Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|250px|left|link=GSoC 2018]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== Welcome to Joomla Google Summer of Code 2018 ==&lt;br /&gt;
This page will aim to be a general informational page for students, mentors and others interested in Joomla&#039;s Google Summer of Code Program.&lt;br /&gt;
=== What is GSoC? ===&lt;br /&gt;
Google Summer of Code is a program run by Google for college students interested in getting a stipend to contribute to FOSS projects. They will spend there summer with improving and writing new features for the project. [https://developers.google.com/open-source/gsoc/ Visit the Google Summer of Code site to learn more.]&lt;br /&gt;
&lt;br /&gt;
*[https://developers.google.com/open-source/gsoc/timeline Google Summer of Code Timeline]&lt;br /&gt;
*[[GSOC_2016_Joomla_GIT_Workflow|Github Work Flow for GSoC Students and Mentors]]&lt;br /&gt;
*[https://volunteers.joomla.org/working-groups/google-summer-of-code-joomla-team GSoC Team on Joomla Volunteers Portal]&lt;br /&gt;
&lt;br /&gt;
Last years projects:&lt;br /&gt;
&lt;br /&gt;
*[https://summerofcode.withgoogle.com/organizations/5660160231997440/ Google Summer of Code for Joomla! Project 2016]&lt;br /&gt;
&lt;br /&gt;
== Information For Students ==&lt;br /&gt;
* [[GSOC 2018 Project Ideas|Joomla&#039;s project idea list]]&lt;br /&gt;
* [[GSoC Student Selection Criteria]]&lt;br /&gt;
* [[GSoC Student Application Template]]&lt;br /&gt;
* [https://groups.google.com/forum/?hl=en#!forum/jgsoc Joomla GSoC Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-cms General Joomla CMS Developer Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-framework Joomla Framework Mailing List]&lt;br /&gt;
&lt;br /&gt;
== Information For Mentors and Proposals ==&lt;br /&gt;
* [https://goo.gl/forms/8cVeLPnehDQED1Ss2 GSoC 2018 Idea submission form]&lt;br /&gt;
* [[GSOC Ideas Selection Criteria]]&lt;br /&gt;
&lt;br /&gt;
== General information ==&lt;br /&gt;
* [https://docs.joomla.org/GSOC_2016_Joomla_GIT_Workflow Github Work Flow for GSoC Students and Mentors]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== CMS or Framework? =====&lt;br /&gt;
Joomla developers are currently working on multiple projects: the Joomla CMS 3.x Version and 4.0.0 (2018-2019). Additionally there are many side projects related to testing, Docker, core extensions and other projects.&lt;br /&gt;
&lt;br /&gt;
The CMS is the very popular and well known FOSS content management system powering currently 3.2% of the internet. The Framework existed within the CMS as a tightly coupled set of utility packages and classes. Eventually developers decided they wanted to work with just those utilities and write new applications not coupled to the CMS. The Joomla Issue Tracker is the first Application built on top of the new Joomla Framework and is currently nearing it&#039;s first stable release.&lt;br /&gt;
&lt;br /&gt;
The project supports all of these initiatives, as does Google Summer of Code. On our [http://docs.joomla.org/GSOC_2018_Project_Ideas ideas list] you will find projects related. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Timeline =====&lt;br /&gt;
GSoC 2018 time line is available on the GSoC Site, we suggest you to go through it [https://developers.google.com/open-source/gsoc/timeline?hl=en GSoC-18 Timelines]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--For a Joomla GSoC student, there are two timelines that a student must be aware of as they are developing their project plan. The first is Google&#039;s own timeline] UPDATE WHEN AVAILABLE. But, because the Joomla CMS has its own specified release cycle, there is also a strong need to be aware of the Joomla release cycle.&lt;br /&gt;
&lt;br /&gt;
To assist in planning a project timeline we have compiled a suggested list of dates and deadlines for students. This includes requirements for all GSoC projects. Please submit a timeline that includes these key deadlines with your project proposal. It is not essential that you follow the same dates listed on the sample timeline, however you must include the milestones and an expected / planned deadline for each milestone.&lt;br /&gt;
&lt;br /&gt;
If you would prefer to subscribe to the Joomla GSoC 2016 Google Calendar, you may do so here:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
UPDATE WHEN AVAILABLE&lt;br /&gt;
[https://www.google.com/calendar/embed?src=t2cvl5q9gm4nsgfckvtvnsopgc%40group.calendar.google.com&amp;amp;ctz=America/Chicago Joomla GSoC 2014 Google Calendar]&lt;br /&gt;
&amp;lt;div class=&amp;quot;calendar-container&amp;quot;&amp;gt;&lt;br /&gt;
{{#widget:Google Calendar&lt;br /&gt;
|id=t2cvl5q9gm4nsgfckvtvnsopgc@group.calendar.google.com&lt;br /&gt;
|view=agenda&lt;br /&gt;
|title=Joomla! GSOC Calendar&lt;br /&gt;
|showcals=false # There is only one, so hide the drop tab #&lt;br /&gt;
}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTE: The above timeline will be updated as more information becomes available, so you may want to subscribe to the calendar using the above +Google Calendar button. --&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Proposal =====&lt;br /&gt;
Please check the [[GSoC Student Application Template]] to understand what we are expecting from your proposal.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Information for Mentors==&lt;br /&gt;
*Want to be a mentor? Please check the [[GSoC Mentor Guidelines]].&lt;br /&gt;
*[[GSoC Mentors Selection Criteria]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Related Articles==&lt;br /&gt;
====Google Summer of Code 2017:====&lt;br /&gt;
*[https://community.joomla.org/gsoc-2017.html Joomla GSoC 2017 students blog articles.]&lt;br /&gt;
&lt;br /&gt;
====Google Summer of Code 2016:====&lt;br /&gt;
&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-sep-2016/item/3129-gsoc-every-story-has-an-ending-every-ending-is-a-new-beginning GSoC: Every Story Has An Ending. Every Ending Is A New Beginning.]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3143-the-brains-behind-joomla-gsoc The brains behind the Joomla! GSoC projects]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3152-gsoc-student-ruchiranga-wickramasinghe Interview with one of the 2016 students Ruchiranga Wickramasinghe]&lt;br /&gt;
*[http://magazine.joomla.org/issues/issue-feb-2016/item/2964-joomla-s-google-summer-of-code-gsoc-is-proud-to-announce-team-lead-puneet-kala Joomla&#039;s Google Summer of Code (GSoC) is Proud to Announce Team Lead: Puneet Kala]&lt;br /&gt;
*[http://community.joomla.org/blogs/community/1894-joomla-has-been-selected-as-a-google-summer-of-code-2016-mentor-organization.html Joomla! has been selected as a Google Summer of Code 2016 mentor organization]&lt;br /&gt;
*[https://community.joomla.org/gsoc-2016/3070-joomla-google-mentor-summit-gsoc16.html Joomla! is going to the 2016 Google Summer of Code Mentor Summit]&lt;br /&gt;
*[https://magazine.joomla.org/site/itemlist/tag/Google%20Summer%20of%20Code Articles on Joomla Community Magazine]&lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code 2018]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2018&amp;diff=469205</id>
		<title>GSOC 2018</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2018&amp;diff=469205"/>
		<updated>2017-11-22T10:12:01Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|250px|left|link=GSoC 2018]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== Welcome to Joomla Google Summer of Code 2018 ==&lt;br /&gt;
This page will aim to be a general informational page for students, mentors and others interested in Joomla&#039;s Google Summer of Code Program.&lt;br /&gt;
=== What is GSoC? ===&lt;br /&gt;
Google Summer of Code is a program run by Google for college students interested in getting a stipend to contribute to FOSS projects. They will spend there summer with improving and writing new features for the project. [https://developers.google.com/open-source/gsoc/ Visit the Google Summer of Code site to learn more.]&lt;br /&gt;
&lt;br /&gt;
*[https://developers.google.com/open-source/gsoc/timeline Google Summer of Code Timeline]&lt;br /&gt;
*[[GSOC_2016_Joomla_GIT_Workflow|Github Work Flow for GSoC Students and Mentors]]&lt;br /&gt;
*[https://volunteers.joomla.org/working-groups/google-summer-of-code-joomla-team GSoC Team on Joomla Volunteers Portal]&lt;br /&gt;
&lt;br /&gt;
Last years projects:&lt;br /&gt;
&lt;br /&gt;
*[https://summerofcode.withgoogle.com/organizations/5660160231997440/ Google Summer of Code for Joomla! Project 2016]&lt;br /&gt;
&lt;br /&gt;
== Information For Students ==&lt;br /&gt;
* [[GSOC 2018 Project Ideas|Joomla&#039;s project idea list]]&lt;br /&gt;
* [[GSoC Student Selection Criteria]]&lt;br /&gt;
* [[GSoC Student Application Template]]&lt;br /&gt;
* [https://groups.google.com/forum/?hl=en#!forum/jgsoc Joomla GSoC Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-cms General Joomla CMS Developer Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-framework Joomla Framework Mailing List]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Information For Mentors and Proposals ==&lt;br /&gt;
* [https://goo.gl/forms/8cVeLPnehDQED1Ss2 GSoC 2018 Idea submission form]&lt;br /&gt;
* [[GSOC Ideas Selection Criteria]]&lt;br /&gt;
&lt;br /&gt;
== General information ==&lt;br /&gt;
* [https://docs.joomla.org/GSOC_2016_Joomla_GIT_Workflow Github Work Flow for GSoC Students and Mentors]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== CMS or Framework? =====&lt;br /&gt;
Joomla developers are currently working on multiple projects: the Joomla CMS 3.x Version and 4.0.0 (2018-2019). Additionally there are many side projects related to testing, Docker, core extensions and other projects.&lt;br /&gt;
&lt;br /&gt;
The CMS is the very popular and well known FOSS content management system powering currently 3.2% of the internet. The Framework existed within the CMS as a tightly coupled set of utility packages and classes. Eventually developers decided they wanted to work with just those utilities and write new applications not coupled to the CMS. The Joomla Issue Tracker is the first Application built on top of the new Joomla Framework and is currently nearing it&#039;s first stable release.&lt;br /&gt;
&lt;br /&gt;
The project supports all of these initiatives, as does Google Summer of Code. On our [http://docs.joomla.org/GSOC_2018_Project_Ideas ideas list] you will find projects related. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Timeline =====&lt;br /&gt;
GSoC 2018 time line is available on the GSoC Site, we suggest you to go through it [https://developers.google.com/open-source/gsoc/timeline?hl=en GSoC-18 Timelines]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--For a Joomla GSoC student, there are two timelines that a student must be aware of as they are developing their project plan. The first is Google&#039;s own timeline] UPDATE WHEN AVAILABLE. But, because the Joomla CMS has its own specified release cycle, there is also a strong need to be aware of the Joomla release cycle.&lt;br /&gt;
&lt;br /&gt;
To assist in planning a project timeline we have compiled a suggested list of dates and deadlines for students. This includes requirements for all GSoC projects. Please submit a timeline that includes these key deadlines with your project proposal. It is not essential that you follow the same dates listed on the sample timeline, however you must include the milestones and an expected / planned deadline for each milestone.&lt;br /&gt;
&lt;br /&gt;
If you would prefer to subscribe to the Joomla GSoC 2016 Google Calendar, you may do so here:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
UPDATE WHEN AVAILABLE&lt;br /&gt;
[https://www.google.com/calendar/embed?src=t2cvl5q9gm4nsgfckvtvnsopgc%40group.calendar.google.com&amp;amp;ctz=America/Chicago Joomla GSoC 2014 Google Calendar]&lt;br /&gt;
&amp;lt;div class=&amp;quot;calendar-container&amp;quot;&amp;gt;&lt;br /&gt;
{{#widget:Google Calendar&lt;br /&gt;
|id=t2cvl5q9gm4nsgfckvtvnsopgc@group.calendar.google.com&lt;br /&gt;
|view=agenda&lt;br /&gt;
|title=Joomla! GSOC Calendar&lt;br /&gt;
|showcals=false # There is only one, so hide the drop tab #&lt;br /&gt;
}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTE: The above timeline will be updated as more information becomes available, so you may want to subscribe to the calendar using the above +Google Calendar button. --&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Proposal =====&lt;br /&gt;
Please check the [[GSoC Student Application Template]] to understand what we are expecting from your proposal.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Information for Mentors==&lt;br /&gt;
*Want to be a mentor? Please check the [[GSoC Mentor Guidelines]].&lt;br /&gt;
*[[GSoC Mentors Selection Criteria]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Related Articles==&lt;br /&gt;
====Google Summer of Code 2017:====&lt;br /&gt;
*[https://community.joomla.org/gsoc-2017.html Joomla GSoC 2017 students blog articles.]&lt;br /&gt;
&lt;br /&gt;
====Google Summer of Code 2016:====&lt;br /&gt;
&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-sep-2016/item/3129-gsoc-every-story-has-an-ending-every-ending-is-a-new-beginning GSoC: Every Story Has An Ending. Every Ending Is A New Beginning.]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3143-the-brains-behind-joomla-gsoc The brains behind the Joomla! GSoC projects]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3152-gsoc-student-ruchiranga-wickramasinghe Interview with one of the 2016 students Ruchiranga Wickramasinghe]&lt;br /&gt;
*[http://magazine.joomla.org/issues/issue-feb-2016/item/2964-joomla-s-google-summer-of-code-gsoc-is-proud-to-announce-team-lead-puneet-kala Joomla&#039;s Google Summer of Code (GSoC) is Proud to Announce Team Lead: Puneet Kala]&lt;br /&gt;
*[http://community.joomla.org/blogs/community/1894-joomla-has-been-selected-as-a-google-summer-of-code-2016-mentor-organization.html Joomla! has been selected as a Google Summer of Code 2016 mentor organization]&lt;br /&gt;
*[https://community.joomla.org/gsoc-2016/3070-joomla-google-mentor-summit-gsoc16.html Joomla! is going to the 2016 Google Summer of Code Mentor Summit]&lt;br /&gt;
*[https://magazine.joomla.org/site/itemlist/tag/Google%20Summer%20of%20Code Articles on Joomla Community Magazine]&lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code 2018]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2018&amp;diff=469204</id>
		<title>GSOC 2018</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2018&amp;diff=469204"/>
		<updated>2017-11-22T10:10:30Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|250px|left|link=GSoC 2018]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== Welcome to Joomla Google Summer of Code 2018 ==&lt;br /&gt;
This page will aim to be a general informational page for students, mentors and others interested in Joomla&#039;s Google Summer of Code Program.&lt;br /&gt;
=== What is GSoC? ===&lt;br /&gt;
Google Summer of Code is a program run by Google for college students interested in getting a stipend to contribute to FOSS projects. They will spend there summer with improving and writing new features for the project. [https://developers.google.com/open-source/gsoc/ Visit the Google Summer of Code site to learn more.]&lt;br /&gt;
&lt;br /&gt;
*[https://developers.google.com/open-source/gsoc/timeline Google Summer of Code Timeline]&lt;br /&gt;
*[[GSOC_2016_Joomla_GIT_Workflow|Github Work Flow for GSoC Students and Mentors]]&lt;br /&gt;
*[https://volunteers.joomla.org/working-groups/google-summer-of-code-joomla-team GSoC Team on Joomla Volunteers Portal]&lt;br /&gt;
&lt;br /&gt;
Last years projects:&lt;br /&gt;
&lt;br /&gt;
*[https://summerofcode.withgoogle.com/organizations/5660160231997440/ Google Summer of Code for Joomla! Project 2016]&lt;br /&gt;
&lt;br /&gt;
== Information For Students ==&lt;br /&gt;
* [[GSOC 2018 Project Ideas|Joomla&#039;s project idea list]]&lt;br /&gt;
* [[GSoC Student Selection Criteria]]&lt;br /&gt;
* [[GSoC Student Application Template]]&lt;br /&gt;
* [https://groups.google.com/forum/?hl=en#!forum/jgsoc Joomla GSoC Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-cms General Joomla CMS Developer Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-framework Joomla Framework Mailing List]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Information For Mentors and Proposals ==&lt;br /&gt;
* [https://goo.gl/forms/8cVeLPnehDQED1Ss2 GSoC 2018 Idea submission form]&lt;br /&gt;
* [[GSOC Ideas Selection Criteria]]&lt;br /&gt;
&lt;br /&gt;
== General information ==&lt;br /&gt;
* [https://docs.joomla.org/GSOC_2016_Joomla_GIT_Workflow Github Work Flow for GSoC Students and Mentors]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== CMS or Framework? =====&lt;br /&gt;
Joomla developers are currently working on multiple projects: the Joomla CMS 3.x Version and 4.0.0 (2018-2019). Additionally there are many side projects related to testing, Docker, core extensions and other projects.&lt;br /&gt;
&lt;br /&gt;
The CMS is the very popular and well known FOSS content management system powering currently 3.2% of the internet. The Framework existed within the CMS as a tightly coupled set of utility packages and classes. Eventually developers decided they wanted to work with just those utilities and write new applications not coupled to the CMS. The Joomla Issue Tracker is the first Application built on top of the new Joomla Framework and is currently nearing it&#039;s first stable release.&lt;br /&gt;
&lt;br /&gt;
The project supports all of these initiatives, as does Google Summer of Code. On our [http://docs.joomla.org/GSOC_2018_Project_Ideas ideas list] you will find projects related. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Timeline =====&lt;br /&gt;
GSoC 2018 time line is available on the GSoC Site, we suggest you to go through it [https://developers.google.com/open-source/gsoc/timeline?hl=en GSoC-18 Timelines]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--For a Joomla GSoC student, there are two timelines that a student must be aware of as they are developing their project plan. The first is Google&#039;s own timeline] UPDATE WHEN AVAILABLE. But, because the Joomla CMS has its own specified release cycle, there is also a strong need to be aware of the Joomla release cycle.&lt;br /&gt;
&lt;br /&gt;
To assist in planning a project timeline we have compiled a suggested list of dates and deadlines for students. This includes requirements for all GSoC projects. Please submit a timeline that includes these key deadlines with your project proposal. It is not essential that you follow the same dates listed on the sample timeline, however you must include the milestones and an expected / planned deadline for each milestone.&lt;br /&gt;
&lt;br /&gt;
If you would prefer to subscribe to the Joomla GSoC 2016 Google Calendar, you may do so here:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
UPDATE WHEN AVAILABLE&lt;br /&gt;
[https://www.google.com/calendar/embed?src=t2cvl5q9gm4nsgfckvtvnsopgc%40group.calendar.google.com&amp;amp;ctz=America/Chicago Joomla GSoC 2014 Google Calendar]&lt;br /&gt;
&amp;lt;div class=&amp;quot;calendar-container&amp;quot;&amp;gt;&lt;br /&gt;
{{#widget:Google Calendar&lt;br /&gt;
|id=t2cvl5q9gm4nsgfckvtvnsopgc@group.calendar.google.com&lt;br /&gt;
|view=agenda&lt;br /&gt;
|title=Joomla! GSOC Calendar&lt;br /&gt;
|showcals=false # There is only one, so hide the drop tab #&lt;br /&gt;
}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTE: The above timeline will be updated as more information becomes available, so you may want to subscribe to the calendar using the above +Google Calendar button. --&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Proposal =====&lt;br /&gt;
Please check the [[GSoC Student Application Template]] to understand what we are expecting from your proposal.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Information for Mentors==&lt;br /&gt;
*Want to be a mentor? Please check the [[GSoC Mentor Guidelines]].&lt;br /&gt;
*[[GSoC Mentors Selection Criteria]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Related Articles==&lt;br /&gt;
Google Summer of Code 2017:&lt;br /&gt;
*[https://community.joomla.org/gsoc-2017.html Joomla GSoC blog articles.]&lt;br /&gt;
&lt;br /&gt;
Google Summer of Code 2016:&lt;br /&gt;
&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-sep-2016/item/3129-gsoc-every-story-has-an-ending-every-ending-is-a-new-beginning GSoC: Every Story Has An Ending. Every Ending Is A New Beginning.]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3143-the-brains-behind-joomla-gsoc The brains behind the Joomla! GSoC projects]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3152-gsoc-student-ruchiranga-wickramasinghe Interview with one of the 2016 students Ruchiranga Wickramasinghe]&lt;br /&gt;
*[http://magazine.joomla.org/issues/issue-feb-2016/item/2964-joomla-s-google-summer-of-code-gsoc-is-proud-to-announce-team-lead-puneet-kala Joomla&#039;s Google Summer of Code (GSoC) is Proud to Announce Team Lead: Puneet Kala]&lt;br /&gt;
*[http://community.joomla.org/blogs/community/1894-joomla-has-been-selected-as-a-google-summer-of-code-2016-mentor-organization.html Joomla! has been selected as a Google Summer of Code 2016 mentor organization]&lt;br /&gt;
*[https://community.joomla.org/gsoc-2016/3070-joomla-google-mentor-summit-gsoc16.html Joomla! is going to the 2016 Google Summer of Code Mentor Summit]&lt;br /&gt;
*[https://magazine.joomla.org/site/itemlist/tag/Google%20Summer%20of%20Code Articles on Joomla Community Magazine]&lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code 2018]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSoC_Student_Selection_Criteria&amp;diff=469203</id>
		<title>GSoC Student Selection Criteria</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSoC_Student_Selection_Criteria&amp;diff=469203"/>
		<updated>2017-11-22T10:05:12Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Update links&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|50px|left|link=]]&lt;br /&gt;
==Want to become a Joomla! Google Summer of Code student?==&lt;br /&gt;
&amp;lt;br&amp;gt;We welcome all enthusiast students to work with Joomla for Google Summer of Code. We encourage you to “do your homework” studying about the GSoC program. This will help you to make an informed decision. Here are some resources for students to get familiar with the program:&lt;br /&gt;
&lt;br /&gt;
*Learn about [https://developers.google.com/open-source/gsoc/faq GSoC]&lt;br /&gt;
*Go through the [https://developers.google.com/open-source/gsoc/resources/manual Student Manual] on GSoC Site&lt;br /&gt;
*Decide if you are [https://developers.google.com/open-source/gsoc/faq?hl=en#whos_eligible_to_participate_as_a_student_in_google_summer_of_code eligible]&lt;br /&gt;
*Read the [https://summerofcode.withgoogle.com/terms/student Student Participation Agreement] from Google.&lt;br /&gt;
*Go through the [https://summerofcode.withgoogle.com/rules/ Rules for Program] on GSoC Site&lt;br /&gt;
*Examine the list of available [https://docs.joomla.org/GSOC_2018_Project_Ideas project ideas] in Joomla for GSoC &lt;br /&gt;
**If you do not see any interesting projects from the proposed ideas, we encourage you to contact [https://groups.google.com/forum/?hl=en#!forum/jgsoc/ Joomla GSoC mailing list] and propose a new idea.&lt;br /&gt;
*Start working on the project proposal.&lt;br /&gt;
*Community and mentors are waiting in the [https://groups.google.com/forum/?hl=en#!forum/jgsoc-2016/ Joomla GSoC mailing list] to help you with that!&lt;br /&gt;
*Register in [https://summerofcode.withgoogle.com/ GSoC] as a student (after student registrations open)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Over the years we have seen many successful student projects. Here are a few tips for students to get an edge over their proposal.&lt;br /&gt;
&lt;br /&gt;
*Get familiar with Joomla Project.&lt;br /&gt;
**Setup Joomla on your computer (see [https://docs.joomla.org/Portal:Beginners Joomla for Beginners]).&lt;br /&gt;
**Setup Joomla [https://docs.joomla.org/Setting_up_your_workstation_for_Joomla_development development environment].&lt;br /&gt;
*Start contributing to the Project and engage with the Community.&lt;br /&gt;
**Contribute to [https://docs.joomla.org/JDOC:How_to_Contribute_to_Joomla!_Documentation documentation].&lt;br /&gt;
**Contribute to the development (see [https://issues.joomla.org/ Issue Tracker]).&lt;br /&gt;
***Fix some known issues.&lt;br /&gt;
***Support in verifying fixed issues.&lt;br /&gt;
***Help us in strengthening the unit test coverage.&lt;br /&gt;
**Help others by answering their questions (see [http://forum.joomla.org/ Joomla Forums]).&lt;br /&gt;
*Start early discussing your proposal with the community on the [https://groups.google.com/forum/#!forum/jgsoc Joomla GSoC Mailing list].&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:Gsoc2016.png|50px|left|link=]]&lt;br /&gt;
==Selection Criteria==&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
We will select the best proposals based on the following criteria:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;(The quantity of students depends on the number of Joomla projects accepted in GSoC)&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*The quality of the proposal and its priority for Joomla Project.&lt;br /&gt;
*Engagement of the student with the community and potential mentors.&lt;br /&gt;
*Contributions by the student to the Joomla Project &amp;amp; Community.&lt;br /&gt;
*Contributing to other Open Source Projects is a plus. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
::&amp;lt;big&amp;gt;&#039;&#039;&#039;We are waiting for your proposal! :)&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code]] [[Category:Google Summer of Code 2018]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2018_Project_Ideas_project_ideas&amp;diff=469202</id>
		<title>GSOC 2018 Project Ideas project ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2018_Project_Ideas_project_ideas&amp;diff=469202"/>
		<updated>2017-11-22T10:02:49Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Yvesh moved page GSOC 2018 Project Ideas project ideas to GSOC 2018 Project Ideas: Fixed URL&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[GSOC 2018 Project Ideas]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2018_Project_Ideas&amp;diff=469201</id>
		<title>GSOC 2018 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2018_Project_Ideas&amp;diff=469201"/>
		<updated>2017-11-22T10:02:49Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Yvesh moved page GSOC 2018 Project Ideas project ideas to GSOC 2018 Project Ideas: Fixed URL&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Welcome to GSoC 2018 Ideas Page ==&lt;br /&gt;
Welcome to the [[GSOC_2018|Joomla Google Summer of Code (GSoC) 2018 project]] ideas page. As we move forward with the 2018 version of the Joomla GSoC, we will update this site with the ideas that have been submitted below.&lt;br /&gt;
&lt;br /&gt;
{{tip|title= The application for ideas is currently open!}} &lt;br /&gt;
&lt;br /&gt;
Please keep in mind that projects need to be realistic and something that is able to be functionally completed by a student working full time for about ten weeks.&lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google].  We strongly encourage you to ask questions about process and ideas on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list].&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|250px|center|link=GSOC 2018]]&lt;br /&gt;
&lt;br /&gt;
== Guidelines on Submitting Ideas ==&lt;br /&gt;
&lt;br /&gt;
Everyone is invited to submit their ideas! You do not have to be a Google Summer of Code student or mentor to suggest one.&lt;br /&gt;
If you have ideas for the Joomla Google Summer of Code Program please send them to us at this form: &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
::&#039;&#039;&#039;* [https://docs.google.com/forms/d/e/1FAIpQLSdHOR7WRdORUQxz7XPRGudkTebsgDNWyKtDpCyYidTM6xbGnw/viewform GSoC 2018 Idea submission form]&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
There are some important guidelines to submit ideas, please read these carefully before adding your ideas:&lt;br /&gt;
* Ensure your idea is able to be completed in a fixed period of time. GSoC runs officially &#039;&#039;&#039;between May, 2018 and August 2018.&#039;&#039;&#039; This is a short period of actual coding time. Ideas should respect the time that students have available for the program. &lt;br /&gt;
* Keep ideas realistic. The ideas on this list should maintain a realistic amount of work for a single student, junior level-developer, who is working with a compressed timeline and a fixed completion (&#039;pencils down&#039;) date. &lt;br /&gt;
* The purpose of GSoC is to improve Joomla. This is not the time to add ideas for new extensions or features that may not be included. If the idea is related to the framework, please consult the framework team directly about new ideas to ensure there is interest in having the package included as an official Joomla Framework package. &lt;br /&gt;
* When in doubt, reach out. If you&#039;re unsure if your idea belongs on this list, please post to the Joomla GSoC mailing list and ask about the community&#039;s interest. &lt;br /&gt;
* No documentation-focused projects. Google Summer of &#039;&#039;Code&#039;&#039; is a program about code. We expect our students to document their work, but writing documentation for Joomla as a project does not align with the goals of GSoC. &lt;br /&gt;
&lt;br /&gt;
== Idea Pool ==&lt;br /&gt;
&lt;br /&gt;
This page is going to be updated once the call for ideas is done and the projects have been chosen and approved by the production department.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Category:Google Summer of Code 2018]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2018_Project_Ideas&amp;diff=469200</id>
		<title>GSOC 2018 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2018_Project_Ideas&amp;diff=469200"/>
		<updated>2017-11-22T10:00:37Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Updating links&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Welcome to GSoC 2018 Ideas Page ==&lt;br /&gt;
Welcome to the [[GSOC_2018|Joomla Google Summer of Code (GSoC) 2018 project]] ideas page. As we move forward with the 2018 version of the Joomla GSoC, we will update this site with the ideas that have been submitted below.&lt;br /&gt;
&lt;br /&gt;
{{tip|title= The application for ideas is currently open!}} &lt;br /&gt;
&lt;br /&gt;
Please keep in mind that projects need to be realistic and something that is able to be functionally completed by a student working full time for about ten weeks.&lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google].  We strongly encourage you to ask questions about process and ideas on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list].&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|250px|center|link=GSOC 2018]]&lt;br /&gt;
&lt;br /&gt;
== Guidelines on Submitting Ideas ==&lt;br /&gt;
&lt;br /&gt;
Everyone is invited to submit their ideas! You do not have to be a Google Summer of Code student or mentor to suggest one.&lt;br /&gt;
If you have ideas for the Joomla Google Summer of Code Program please send them to us at this form: &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
::&#039;&#039;&#039;* [https://docs.google.com/forms/d/e/1FAIpQLSdHOR7WRdORUQxz7XPRGudkTebsgDNWyKtDpCyYidTM6xbGnw/viewform GSoC 2018 Idea submission form]&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
There are some important guidelines to submit ideas, please read these carefully before adding your ideas:&lt;br /&gt;
* Ensure your idea is able to be completed in a fixed period of time. GSoC runs officially &#039;&#039;&#039;between May, 2018 and August 2018.&#039;&#039;&#039; This is a short period of actual coding time. Ideas should respect the time that students have available for the program. &lt;br /&gt;
* Keep ideas realistic. The ideas on this list should maintain a realistic amount of work for a single student, junior level-developer, who is working with a compressed timeline and a fixed completion (&#039;pencils down&#039;) date. &lt;br /&gt;
* The purpose of GSoC is to improve Joomla. This is not the time to add ideas for new extensions or features that may not be included. If the idea is related to the framework, please consult the framework team directly about new ideas to ensure there is interest in having the package included as an official Joomla Framework package. &lt;br /&gt;
* When in doubt, reach out. If you&#039;re unsure if your idea belongs on this list, please post to the Joomla GSoC mailing list and ask about the community&#039;s interest. &lt;br /&gt;
* No documentation-focused projects. Google Summer of &#039;&#039;Code&#039;&#039; is a program about code. We expect our students to document their work, but writing documentation for Joomla as a project does not align with the goals of GSoC. &lt;br /&gt;
&lt;br /&gt;
== Idea Pool ==&lt;br /&gt;
&lt;br /&gt;
This page is going to be updated once the call for ideas is done and the projects have been chosen and approved by the production department.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Category:Google Summer of Code 2018]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2018_Project_Ideas&amp;diff=469199</id>
		<title>GSOC 2018 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2018_Project_Ideas&amp;diff=469199"/>
		<updated>2017-11-22T09:57:47Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Initial Submission of new ideas 2018&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Welcome to GSoC 2018 Ideas Page ==&lt;br /&gt;
Welcome to the [[GSOC_2018|Joomla Google Summer of Code (GSoC) 2018 project]] ideas page. As we move forward with the 2018 version of the Joomla GSoC, we will update this site with the ideas that have been submitted below.&lt;br /&gt;
&lt;br /&gt;
{{tip|title= The application for ideas is currently open!}} &lt;br /&gt;
&lt;br /&gt;
Please keep in mind that projects need to be realistic and something that is able to be functionally completed by a student working full time for about ten weeks.&lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google].  We strongly encourage you to ask questions about process and ideas on our [https://groups.google.com/forum/#!forum/jgsoc joomla-gsoc mailing list].&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|250px|center|link=GSOC 2018]]&lt;br /&gt;
&lt;br /&gt;
== Guidelines on Submitting Ideas ==&lt;br /&gt;
&lt;br /&gt;
Everyone is invited to submit their ideas! You do not have to be a Google Summer of Code student or mentor to suggest one.&lt;br /&gt;
If you have ideas for the Joomla Google Summer of Code Program please send them to us at this form: &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
::&#039;&#039;&#039;* [https://docs.google.com/forms/d/e/1FAIpQLSd8up4QNOwkY9It0sHVJ-bfCXaam2p7OUuSZSCiW4U4Ywq-Rg/viewform GSoC 2018 Idea submission form]&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
There are some important guidelines to submit ideas, please read these carefully before adding your ideas:&lt;br /&gt;
* Ensure your idea is able to be completed in a fixed period of time. GSoC runs officially &#039;&#039;&#039;between May, 2018 and August 2018.&#039;&#039;&#039; This is a short period of actual coding time. Ideas should respect the time that students have available for the program. &lt;br /&gt;
* Keep ideas realistic. The ideas on this list should maintain a realistic amount of work for a single student, junior level-developer, who is working with a compressed timeline and a fixed completion (&#039;pencils down&#039;) date. &lt;br /&gt;
* The purpose of GSoC is to improve Joomla. This is not the time to add ideas for new extensions or features that may not be included. If the idea is related to the framework, please consult the framework team directly about new ideas to ensure there is interest in having the package included as an official Joomla Framework package. &lt;br /&gt;
* When in doubt, reach out. If you&#039;re unsure if your idea belongs on this list, please post to the Joomla GSoC mailing list and ask about the community&#039;s interest. &lt;br /&gt;
* No documentation-focused projects. Google Summer of &#039;&#039;Code&#039;&#039; is a program about code. We expect our students to document their work, but writing documentation for Joomla as a project does not align with the goals of GSoC. &lt;br /&gt;
&lt;br /&gt;
== Idea Pool ==&lt;br /&gt;
&lt;br /&gt;
This page is going to be updated once the call for ideas is done and the projects have been chosen and approved by the production department.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Category:Google Summer of Code 2017]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSoC_Student_Selection_Criteria&amp;diff=469198</id>
		<title>GSoC Student Selection Criteria</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSoC_Student_Selection_Criteria&amp;diff=469198"/>
		<updated>2017-11-22T08:44:57Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Update to 2018&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|50px|left|link=]]&lt;br /&gt;
==Want to become a Joomla! Google Summer of Code student?==&lt;br /&gt;
&amp;lt;br&amp;gt;We welcome all enthusiast students to work with Joomla for Google Summer of Code. We encourage you to “do your homework” studying about the GSoC program. This will help you to make an informed decision. :) Here are some resources for students to get familiar with the program:&lt;br /&gt;
&lt;br /&gt;
*Learn about [https://developers.google.com/open-source/gsoc/faq GSoC]&lt;br /&gt;
*Go through the [https://developers.google.com/open-source/gsoc/resources/manual Student Manual] on GSoC Site&lt;br /&gt;
*Decide if you are [https://developers.google.com/open-source/gsoc/faq?hl=en#whos_eligible_to_participate_as_a_student_in_google_summer_of_code eligible]&lt;br /&gt;
*Read the [https://summerofcode.withgoogle.com/terms/student Student Participation Agreement] from Google.&lt;br /&gt;
*Go through the [https://summerofcode.withgoogle.com/rules/ Rules for 2016 Program] on GSoC Site&lt;br /&gt;
*Examine the list of available [https://docs.joomla.org/GSOC_2018_Project_Ideas project ideas] in Joomla for GSoC 2018&lt;br /&gt;
**If you do not see any interesting projects from the proposed ideas, we encourage you to contact [https://groups.google.com/forum/?hl=en#!forum/jgsoc/ Joomla GSoC mailing list] and propose a new idea.&lt;br /&gt;
*Start working on the project proposal.&lt;br /&gt;
*Community and mentors are waiting in the [https://groups.google.com/forum/?hl=en#!forum/jgsoc-2016/ Joomla GSoC mailing list] to help you with that!&lt;br /&gt;
*Register in [https://summerofcode.withgoogle.com/ GSoC] as a student (after student registrations open)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Over the years we have seen many successful student projects. Here are a few tips for students to get an edge over their proposal.&lt;br /&gt;
&lt;br /&gt;
*Get familiar with Joomla Project.&lt;br /&gt;
**Setup Joomla on your computer (see [https://docs.joomla.org/Portal:Beginners Joomla for Beginners]).&lt;br /&gt;
**Setup Joomla [https://docs.joomla.org/Setting_up_your_workstation_for_Joomla_development development environment].&lt;br /&gt;
*Start contributing to the Project and engage with the Community.&lt;br /&gt;
**Contribute to [https://docs.joomla.org/JDOC:How_to_Contribute_to_Joomla!_Documentation documentation].&lt;br /&gt;
**Contribute to the development (see [https://issues.joomla.org/ Issue Tracker]).&lt;br /&gt;
***Fix some known issues.&lt;br /&gt;
***Support in verifying fixed issues.&lt;br /&gt;
***Help us in strengthening the unit test coverage.&lt;br /&gt;
**Help others by answering their questions (see [http://forum.joomla.org/ Joomla Forums]).&lt;br /&gt;
*Start early discussing your proposal with the community on the [https://groups.google.com/forum/#!forum/jgsoc-2016 Joomla GSoC Mailing list].&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:Gsoc2016.png|50px|left|link=]]&lt;br /&gt;
==Selection Criteria==&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
We will select the best proposals based on the following criteria:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;(The quantity of students depends on the number of Joomla projects accepted in GSoC)&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*The quality of the proposal and its priority for Joomla Project.&lt;br /&gt;
*Engagement of the student with the community and potential mentors.&lt;br /&gt;
*Contributions by the student to the Joomla Project &amp;amp; Community.&lt;br /&gt;
*Contributing to other Open Source Projects is a plus. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
::&amp;lt;big&amp;gt;&#039;&#039;&#039;We are waiting for your proposal! :)&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code]] [[Category:Google Summer of Code 2018]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSoC_Student_Selection_Criteria&amp;diff=469197</id>
		<title>GSoC Student Selection Criteria</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSoC_Student_Selection_Criteria&amp;diff=469197"/>
		<updated>2017-11-22T08:04:50Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|50px|left|link=]]&lt;br /&gt;
==Want to become a Joomla! Google Summer of Code student?==&lt;br /&gt;
&amp;lt;br&amp;gt;We welcome all enthusiast students to work with Joomla for Google Summer of Code. We encourage you to “do your homework” studying about the GSoC program. This will help you to make an informed decision. :) Here are some resources for students to get familiar with the program:&lt;br /&gt;
&lt;br /&gt;
*Learn about [https://developers.google.com/open-source/gsoc/faq GSoC]&lt;br /&gt;
*Go through the [https://developers.google.com/open-source/gsoc/resources/manual Student Manual] on GSoC Site&lt;br /&gt;
*Decide if you are [https://developers.google.com/open-source/gsoc/faq?hl=en#whos_eligible_to_participate_as_a_student_in_google_summer_of_code eligible]&lt;br /&gt;
*Read the [https://summerofcode.withgoogle.com/terms/student Student Participation Agreement] from Google.&lt;br /&gt;
*Go through the [https://summerofcode.withgoogle.com/rules/ Rules for 2016 Program] on GSoC Site&lt;br /&gt;
*Examine the list of available [https://docs.joomla.org/GSOC_2016_Project_Ideas project ideas] in Joomla for GSoC 2016&lt;br /&gt;
**If you do not see any interesting projects from the proposed ideas, we encourage you to contact [https://groups.google.com/forum/?hl=en#!forum/jgsoc-2016/ Joomla GSoC mailing list] and propose a new idea.&lt;br /&gt;
*Start working on the project proposal.&lt;br /&gt;
*Community and mentors are waiting in the [https://groups.google.com/forum/?hl=en#!forum/jgsoc-2016/ Joomla GSoC mailing list] to help you with that!&lt;br /&gt;
*Register in [https://summerofcode.withgoogle.com/ GSoC 2016] as a student (after student registrations open)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Over the years we have seen many successful student projects. Here are a few tips for students to get an edge over their proposal.&lt;br /&gt;
&lt;br /&gt;
*Get familiar with Joomla Project.&lt;br /&gt;
**Setup Joomla on your computer (see [https://docs.joomla.org/Portal:Beginners Joomla for Beginners]).&lt;br /&gt;
**Setup Joomla [https://docs.joomla.org/Setting_up_your_workstation_for_Joomla_development development environment].&lt;br /&gt;
*Start contributing to the Project and engage with the Community.&lt;br /&gt;
**Contribute to [https://docs.joomla.org/JDOC:How_to_Contribute_to_Joomla!_Documentation documentation].&lt;br /&gt;
**Contribute to the development (see [https://issues.joomla.org/ Issue Tracker]).&lt;br /&gt;
***Fix some known issues.&lt;br /&gt;
***Support in verifying fixed issues.&lt;br /&gt;
***Help us in strengthening the unit test coverage.&lt;br /&gt;
**Help others by answering their questions (see [http://forum.joomla.org/ Joomla Forums]).&lt;br /&gt;
*Start early discussing your proposal with the community on the [https://groups.google.com/forum/#!forum/jgsoc-2016 Joomla GSoC Mailing list].&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:Gsoc2016.png|50px|left|link=]]&lt;br /&gt;
==Selection Criteria==&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
We will select the best proposals based on the following criteria:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;(The quantity of students depends on the number of Joomla projects accepted in GSoC)&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*The quality of the proposal and its priority for Joomla Project.&lt;br /&gt;
*Engagement of the student with the community and potential mentors.&lt;br /&gt;
*Contributions by the student to the Joomla Project &amp;amp; Community.&lt;br /&gt;
*Contributing to other Open Source Projects is a plus. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
::&amp;lt;big&amp;gt;&#039;&#039;&#039;We are waiting for your proposal! :)&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code]] [[Category:Google Summer of Code 2018]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2018&amp;diff=469196</id>
		<title>GSOC 2018</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2018&amp;diff=469196"/>
		<updated>2017-11-22T08:03:32Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|250px|left|link=GSOC 2018]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== Welcome to Google Summer of Code 2018 ==&lt;br /&gt;
This page will aim to be a general informational page for students, mentors and others interested in Joomla&#039;s Google Summer of Code Program.&lt;br /&gt;
=== What is GSoC? ===&lt;br /&gt;
Google Summer of Code is a program run by Google for college students interested in getting a stipend to contribute to FOSS projects. They will spend there summer with improving and writing new features for the project. [https://developers.google.com/open-source/gsoc/ Visit the Google Summer of Code site to learn more.]&lt;br /&gt;
&lt;br /&gt;
*[https://developers.google.com/open-source/gsoc/timeline Google Summer of Code Timeline]&lt;br /&gt;
*[[GSOC_2016_Joomla_GIT_Workflow|Github Work Flow for GSoC Students and Mentors]]&lt;br /&gt;
*[https://volunteers.joomla.org/working-groups/google-summer-of-code-joomla-team GSoC Team on Joomla Volunteers Portal]&lt;br /&gt;
&lt;br /&gt;
Last years projects:&lt;br /&gt;
&lt;br /&gt;
*[https://summerofcode.withgoogle.com/organizations/5660160231997440/ Google Summer of Code for Joomla! Project 2016]&lt;br /&gt;
&lt;br /&gt;
== Information For Students ==&lt;br /&gt;
* [[GSOC 2018 Project Ideas|Joomla&#039;s Idea List]]&lt;br /&gt;
* [[GSoC Student Selection Criteria]]&lt;br /&gt;
* [[GSoC Student Application Template]]&lt;br /&gt;
* [[GSOC Ideas Selection Criteria]]&lt;br /&gt;
* [https://goo.gl/forms/8cVeLPnehDQED1Ss2 GSoC 2018 Idea submission form]&lt;br /&gt;
* [https://groups.google.com/forum/?hl=en#!forum/jgsoc Joomla GSoC Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-cms General Joomla CMS Developer Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-framework Joomla Framework Mailing List]&lt;br /&gt;
* [https://docs.joomla.org/GSOC_2016_Joomla_GIT_Workflow Github Work Flow for GSoC Students and Mentors]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== CMS or Framework? =====&lt;br /&gt;
Joomla developers are currently working on multiple projects: the Joomla CMS 3.x Version and 4.0.0 (2018-2019). Additionally there are many side projects related to testing, Docker, core extensions and other projects.&lt;br /&gt;
&lt;br /&gt;
The CMS is the very popular and well known FOSS content management system powering 3.2% of the internet. The Framework existed within the CMS as a tightly coupled set of utility packages and classes. Eventually developers decided they wanted to work with just those utilities and write new applications not coupled to the CMS. The Joomla Issue Tracker is the first Application built on top of the new Joomla Framework and is currently nearing it&#039;s first stable release.&lt;br /&gt;
&lt;br /&gt;
The project supports all of these initiatives, as does Google Summer of Code. On our [http://docs.joomla.org/GSOC_2018_Project_Ideas ideas list] you will find projects related. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Timeline =====&lt;br /&gt;
GSoC 2018 time line is available on the GSoC Site, we suggest you to go through it [https://developers.google.com/open-source/gsoc/timeline?hl=en GSoC-18 Timelines]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--For a Joomla GSoC student, there are two timelines that a student must be aware of as they are developing their project plan. The first is Google&#039;s own timeline] UPDATE WHEN AVAILABLE. But, because the Joomla CMS has its own specified release cycle, there is also a strong need to be aware of the Joomla release cycle.&lt;br /&gt;
&lt;br /&gt;
To assist in planning a project timeline we have compiled a suggested list of dates and deadlines for students. This includes requirements for all GSoC projects. Please submit a timeline that includes these key deadlines with your project proposal. It is not essential that you follow the same dates listed on the sample timeline, however you must include the milestones and an expected / planned deadline for each milestone.&lt;br /&gt;
&lt;br /&gt;
If you would prefer to subscribe to the Joomla GSoC 2016 Google Calendar, you may do so here:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
UPDATE WHEN AVAILABLE&lt;br /&gt;
[https://www.google.com/calendar/embed?src=t2cvl5q9gm4nsgfckvtvnsopgc%40group.calendar.google.com&amp;amp;ctz=America/Chicago Joomla GSoC 2014 Google Calendar]&lt;br /&gt;
&amp;lt;div class=&amp;quot;calendar-container&amp;quot;&amp;gt;&lt;br /&gt;
{{#widget:Google Calendar&lt;br /&gt;
|id=t2cvl5q9gm4nsgfckvtvnsopgc@group.calendar.google.com&lt;br /&gt;
|view=agenda&lt;br /&gt;
|title=Joomla! GSOC Calendar&lt;br /&gt;
|showcals=false # There is only one, so hide the drop tab #&lt;br /&gt;
}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTE: The above timeline will be updated as more information becomes available, so you may want to subscribe to the calendar using the above +Google Calendar button. --&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Proposal =====&lt;br /&gt;
Please check the [[GSoC Student Application Template]] to understand what we are expecting from your proposal.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Information for Mentors==&lt;br /&gt;
*Want to be a mentor? Please check the [[GSoC Mentor Guidelines]].&lt;br /&gt;
*[[GSoC 2018 Mentors Selection Criteria]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Related Articles==&lt;br /&gt;
&lt;br /&gt;
Last Google Summer of Code 2016:&lt;br /&gt;
&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-sep-2016/item/3129-gsoc-every-story-has-an-ending-every-ending-is-a-new-beginning GSoC: Every Story Has An Ending. Every Ending Is A New Beginning.]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3143-the-brains-behind-joomla-gsoc The brains behind the Joomla! GSoC projects]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3152-gsoc-student-ruchiranga-wickramasinghe Interview with one of the 2016 students Ruchiranga Wickramasinghe]&lt;br /&gt;
*[http://magazine.joomla.org/issues/issue-feb-2016/item/2964-joomla-s-google-summer-of-code-gsoc-is-proud-to-announce-team-lead-puneet-kala Joomla&#039;s Google Summer of Code (GSoC) is Proud to Announce Team Lead: Puneet Kala]&lt;br /&gt;
*[http://community.joomla.org/blogs/community/1894-joomla-has-been-selected-as-a-google-summer-of-code-2016-mentor-organization.html Joomla! has been selected as a Google Summer of Code 2016 mentor organization]&lt;br /&gt;
*[https://community.joomla.org/gsoc-2016/3070-joomla-google-mentor-summit-gsoc16.html Joomla! is going to the 2016 Google Summer of Code Mentor Summit]&lt;br /&gt;
*[https://magazine.joomla.org/site/itemlist/tag/Google%20Summer%20of%20Code Articles on Joomla Community Magazine]&lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code 2018]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2018&amp;diff=469195</id>
		<title>GSOC 2018</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2018&amp;diff=469195"/>
		<updated>2017-11-22T07:58:55Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Initial Submit of the new GSoC Landing page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Gsoc2016.png|250px|left|link=GSOC 2018]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== Welcome to Google Summer of Code 2018 ==&lt;br /&gt;
This page will aim to be a general informational page for students, mentors and others interested in Joomla&#039;s Google Summer of Code Program.&lt;br /&gt;
=== What is GSoC? ===&lt;br /&gt;
Google Summer of Code is a program run by Google for college students interested in getting a stipend to contribute to FOSS projects. They will spend there summer with improving and writing new features for the project. [https://developers.google.com/open-source/gsoc/ Visit the Google Summer of Code site to learn more.]&lt;br /&gt;
&lt;br /&gt;
*[https://developers.google.com/open-source/gsoc/timeline Google Summer of Code Timeline]&lt;br /&gt;
*[[GSOC_2016_Joomla_GIT_Workflow|Github Work Flow for GSoC Students and Mentors]]&lt;br /&gt;
*[https://volunteers.joomla.org/working-groups/google-summer-of-code-joomla-team GSoC Team on Joomla Volunteers Portal]&lt;br /&gt;
&lt;br /&gt;
Last years projects:&lt;br /&gt;
&lt;br /&gt;
*[https://summerofcode.withgoogle.com/organizations/5660160231997440/ Google Summer of Code for Joomla! Project 2016]&lt;br /&gt;
&lt;br /&gt;
== Information For Students ==&lt;br /&gt;
* [[GSOC 2018 Project Ideas|Joomla&#039;s Idea List]]&lt;br /&gt;
* [[GSoC Student Selection Criteria]]&lt;br /&gt;
* [[GSoC Student Application Template]]&lt;br /&gt;
* [[GSOC Ideas Selection Criteria]]&lt;br /&gt;
* [https://docs.google.com/forms/d/e/1FAIpQLSd8up4QNOwkY9It0sHVJ-bfCXaam2p7OUuSZSCiW4U4Ywq-Rg/viewform GSoC 2018 Idea submission form]&lt;br /&gt;
* [https://groups.google.com/forum/?hl=en#!forum/jgsoc Joomla GSoC Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-cms General Joomla CMS Developer Mailing List]&lt;br /&gt;
* [https://groups.google.com/forum/#!forum/joomla-dev-framework Joomla Framework Mailing List]&lt;br /&gt;
* [https://docs.joomla.org/GSOC_2016_Joomla_GIT_Workflow Github Work Flow for GSoC Students and Mentors]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== CMS or Framework? =====&lt;br /&gt;
Joomla developers are currently working on multiple projects: the Joomla CMS 3.x Version and 4.0.0 (2018-2019). Additionally there are many side projects related to testing, Docker, core extensions and other projects.&lt;br /&gt;
&lt;br /&gt;
The CMS is the very popular and well known FOSS content management system powering 3.2% of the internet. The Framework existed within the CMS as a tightly coupled set of utility packages and classes. Eventually developers decided they wanted to work with just those utilities and write new applications not coupled to the CMS. The Joomla Issue Tracker is the first Application built on top of the new Joomla Framework and is currently nearing it&#039;s first stable release.&lt;br /&gt;
&lt;br /&gt;
The project supports all of these initiatives, as does Google Summer of Code. On our [http://docs.joomla.org/GSOC_2018_Project_Ideas ideas list] you will find projects related. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Timeline =====&lt;br /&gt;
GSoC 2018 time line is available on the GSoC Site, we suggest you to go through it [https://developers.google.com/open-source/gsoc/timeline?hl=en GSoC-18 Timelines]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--For a Joomla GSoC student, there are two timelines that a student must be aware of as they are developing their project plan. The first is Google&#039;s own timeline] UPDATE WHEN AVAILABLE. But, because the Joomla CMS has its own specified release cycle, there is also a strong need to be aware of the Joomla release cycle.&lt;br /&gt;
&lt;br /&gt;
To assist in planning a project timeline we have compiled a suggested list of dates and deadlines for students. This includes requirements for all GSoC projects. Please submit a timeline that includes these key deadlines with your project proposal. It is not essential that you follow the same dates listed on the sample timeline, however you must include the milestones and an expected / planned deadline for each milestone.&lt;br /&gt;
&lt;br /&gt;
If you would prefer to subscribe to the Joomla GSoC 2016 Google Calendar, you may do so here:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
UPDATE WHEN AVAILABLE&lt;br /&gt;
[https://www.google.com/calendar/embed?src=t2cvl5q9gm4nsgfckvtvnsopgc%40group.calendar.google.com&amp;amp;ctz=America/Chicago Joomla GSoC 2014 Google Calendar]&lt;br /&gt;
&amp;lt;div class=&amp;quot;calendar-container&amp;quot;&amp;gt;&lt;br /&gt;
{{#widget:Google Calendar&lt;br /&gt;
|id=t2cvl5q9gm4nsgfckvtvnsopgc@group.calendar.google.com&lt;br /&gt;
|view=agenda&lt;br /&gt;
|title=Joomla! GSOC Calendar&lt;br /&gt;
|showcals=false # There is only one, so hide the drop tab #&lt;br /&gt;
}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTE: The above timeline will be updated as more information becomes available, so you may want to subscribe to the calendar using the above +Google Calendar button. --&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Project Proposal =====&lt;br /&gt;
Please check the [[GSoC Student Application Template]] to understand what we are expecting from your proposal.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Information for Mentors==&lt;br /&gt;
*Want to be a mentor? Please check the [[GSoC Mentor Guidelines]].&lt;br /&gt;
*[[GSoC 2018 Mentors Selection Criteria]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Related Articles==&lt;br /&gt;
&lt;br /&gt;
Last Google Summer of Code 2016:&lt;br /&gt;
&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-sep-2016/item/3129-gsoc-every-story-has-an-ending-every-ending-is-a-new-beginning GSoC: Every Story Has An Ending. Every Ending Is A New Beginning.]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3143-the-brains-behind-joomla-gsoc The brains behind the Joomla! GSoC projects]&lt;br /&gt;
*[https://magazine.joomla.org/issues/issue-oct-2016/item/3152-gsoc-student-ruchiranga-wickramasinghe Interview with one of the 2016 students Ruchiranga Wickramasinghe]&lt;br /&gt;
*[http://magazine.joomla.org/issues/issue-feb-2016/item/2964-joomla-s-google-summer-of-code-gsoc-is-proud-to-announce-team-lead-puneet-kala Joomla&#039;s Google Summer of Code (GSoC) is Proud to Announce Team Lead: Puneet Kala]&lt;br /&gt;
*[http://community.joomla.org/blogs/community/1894-joomla-has-been-selected-as-a-google-summer-of-code-2016-mentor-organization.html Joomla! has been selected as a Google Summer of Code 2016 mentor organization]&lt;br /&gt;
*[https://community.joomla.org/gsoc-2016/3070-joomla-google-mentor-summit-gsoc16.html Joomla! is going to the 2016 Google Summer of Code Mentor Summit]&lt;br /&gt;
*[https://magazine.joomla.org/site/itemlist/tag/Google%20Summer%20of%20Code Articles on Joomla Community Magazine]&lt;br /&gt;
&lt;br /&gt;
[[Category:Google Summer of Code 2018]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Automated_Tests_Working_Group&amp;diff=425402</id>
		<title>Automated Tests Working Group</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Automated_Tests_Working_Group&amp;diff=425402"/>
		<updated>2017-06-24T10:32:47Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;&amp;lt;languages /&amp;gt;&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
The &#039;&#039;&#039;Automated Testing Team &#039;&#039;&#039; falls under the responsibility of the [https://volunteers.joomla.org/departments/production Production Department], which oversees all aspects related to the code of all software lead by the Joomla! Project.&amp;lt;/translate&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;translate&amp;gt;&amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
This is the home page of the Automated Test Team. This team is the result of combining the old System Testing Working Group and the Unit Testing Working Group.&amp;lt;/translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
== Team Members == &amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&amp;lt;!--T:4--&amp;gt;&lt;br /&gt;
Please visit the [https://volunteers.joomla.org/teams/automated-tests-working-group Volunteers Portal] to get an overview of the members of this team.&amp;lt;/translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
== Goals == &amp;lt;!--T:5--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&amp;lt;!--T:6--&amp;gt;&lt;br /&gt;
* Improve the Quality of Joomla CMS software &lt;br /&gt;
* Create learning material about &amp;quot;how to test&amp;quot; for the Joomla Community.&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
== Roadmap== &amp;lt;!--T:7--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&amp;lt;!--T:8--&amp;gt;&lt;br /&gt;
The next steps for 2017 / 2018 are:&lt;br /&gt;
* System test coverage for Joomla! CMS core&lt;br /&gt;
* Update PHPUnit to newest version&lt;br /&gt;
* Code Sniffer rules&lt;br /&gt;
* New docker based infrastructure&lt;br /&gt;
* Extension Tests for B/C.&amp;lt;/translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
==History== &amp;lt;!--T:9--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
=== 2017 === &amp;lt;!--T:10--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&amp;lt;!--T:11--&amp;gt;&lt;br /&gt;
* Merge system tests into core (tests/codeception)&amp;lt;/translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
=== Google Summer of Code === &amp;lt;!--T:12--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&amp;lt;!--T:13--&amp;gt;&lt;br /&gt;
* JavaScript Tests for Joomla 4&lt;br /&gt;
* Parallel Testing setup&lt;br /&gt;
* PR Testing platform.&amp;lt;/translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
=== 2016 === &amp;lt;!--T:14--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&amp;lt;!--T:15--&amp;gt;&lt;br /&gt;
* System test architecture.&amp;lt;/translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
=== Google Summer of Code === &amp;lt;!--T:16--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&amp;lt;!--T:17--&amp;gt;&lt;br /&gt;
* JavaScript Tests with Karma and Jasmine&lt;br /&gt;
* focus on Joomla system Tests and test architecture for Joomla.&amp;lt;/translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
=== GSoC 2014 === &amp;lt;!--T:18--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&amp;lt;!--T:19--&amp;gt;&lt;br /&gt;
* Focus on [[S:MyLanguage/GSOC_2014_Project_Ideas#Project:_Webdriver_system_tests_for_CMS|Google Summer of Code 2014 Project: Webdriver system tests for CMS]].&amp;lt;/translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Documents == &amp;lt;!--T:20--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
* &amp;lt;translate&amp;gt;&amp;lt;!--T:21--&amp;gt;&lt;br /&gt;
[[S:MyLanguage/Writing_System_Tests_for_Joomla!_-_Part_1|Writing System Tests for Joomla!]]&amp;lt;/translate&amp;gt;&lt;br /&gt;
* &amp;lt;translate&amp;gt;&amp;lt;!--T:22--&amp;gt;&lt;br /&gt;
Writting system tests with Codeception: [[S:MyLanguage/Testing Joomla Extensions with Codeception|Testing Joomla Extensions with Codeception]]&amp;lt;/translate&amp;gt;&lt;br /&gt;
* &amp;lt;translate&amp;gt;&amp;lt;!--T:24--&amp;gt;&lt;br /&gt;
Javier Gomez presentation of Joomla System Testing at Joomla World Conference 2014:&amp;lt;/translate&amp;gt; http://prezi.com/qsf17leurgbe/automated-system-testing-in-joomla/&lt;br /&gt;
* &amp;lt;translate&amp;gt;&amp;lt;!--T:25--&amp;gt;&lt;br /&gt;
Joomla! Testing Overview 2016 session slides:&amp;lt;/translate&amp;gt; https://www.slideshare.net/YvesHoppe/joomla-testing-jdd-germany-2016.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Projects == &amp;lt;!--T:26--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
* &amp;lt;translate&amp;gt;&amp;lt;!--T:27--&amp;gt;&lt;br /&gt;
Joomla System tests:&amp;lt;/translate&amp;gt; https://github.com/joomla/joomla-cms/tree/staging/tests/codeception&lt;br /&gt;
* com_weblinks: https://github.com/joomla-extensions/weblinks - Extension testing project with Codeception&lt;br /&gt;
* &amp;lt;translate&amp;gt;&amp;lt;!--T:28--&amp;gt;&lt;br /&gt;
Old system tests repository:&amp;lt;/translate&amp;gt; https://github.com/joomla-projects/gsoc16_browser-automated-tests&lt;br /&gt;
* &amp;lt;translate&amp;gt;&amp;lt;!--T:29--&amp;gt;&lt;br /&gt;
Basic steps and actions for Joomla Selenium / Codeception tests:&amp;lt;/translate&amp;gt; https://github.com/joomla-projects/joomla-browser&lt;br /&gt;
* &amp;lt;translate&amp;gt;&amp;lt;!--T:30--&amp;gt;&lt;br /&gt;
JoRobo build scripts for building extensions:&amp;lt;/translate&amp;gt; https://github.com/joomla-projects/jorobo&lt;br /&gt;
* &amp;lt;translate&amp;gt;&amp;lt;!--T:31--&amp;gt;&lt;br /&gt;
Joomla Robo.li testing scripts:&amp;lt;/translate&amp;gt; https://github.com/joomla-projects/joomla-testing-robo&lt;br /&gt;
* &amp;lt;translate&amp;gt;&amp;lt;!--T:32--&amp;gt;&lt;br /&gt;
The Joomla [[S:MyLanguage/Docker Container for System Tests|Docker Container for System Tests]]&amp;lt;/translate&amp;gt;&lt;br /&gt;
* &amp;lt;translate&amp;gt;&amp;lt;!--T:33--&amp;gt;&lt;br /&gt;
Docker system testing image:&amp;lt;/translate&amp;gt; https://github.com/joomla-projects/docker-systemtests&lt;br /&gt;
* &amp;lt;translate&amp;gt;&amp;lt;!--T:34--&amp;gt;&lt;br /&gt;
JS Tests (merged in core):&amp;lt;/translate&amp;gt; https://github.com/joomla-projects/gsoc16_js-unit-tests&lt;br /&gt;
* &amp;lt;translate&amp;gt;&amp;lt;!--T:35--&amp;gt;&lt;br /&gt;
Joomla vagrant testing box:&amp;lt;/translate&amp;gt; https://github.com/joomla-projects/vagrant-joomla-testing Groups&lt;br /&gt;
* &amp;lt;translate&amp;gt;&amp;lt;!--T:36--&amp;gt;&lt;br /&gt;
Selenium package with webdrivers:&amp;lt;/translate&amp;gt; https://github.com/joomla-projects/selenium-server-standalone&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:37--&amp;gt;&lt;br /&gt;
[[Category:Production_Department]]&lt;br /&gt;
[[Category:Automated Testing]]&lt;br /&gt;
[[Category:Active Working Groups]] &lt;br /&gt;
[[Category:Working Groups]]&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Automated_Tests_Working_Group&amp;diff=425333</id>
		<title>Automated Tests Working Group</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Automated_Tests_Working_Group&amp;diff=425333"/>
		<updated>2017-06-24T09:47:09Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Updated linkws&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is the home page of the Automated Test Working Group. This group is the result of combining the old System Testing Working Group and the Unit Testing Working Group.&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
See the full list at: http://volunteers.joomla.org/working-groups/automated-tests-working-group&lt;br /&gt;
&lt;br /&gt;
== Goals ==&lt;br /&gt;
* Improve the Quality of Joomla CMS software &lt;br /&gt;
* Create learning material about &amp;quot;how to test&amp;quot; for the Joomla Community&lt;br /&gt;
&lt;br /&gt;
== Roadmap==&lt;br /&gt;
The next steps for 2017 / 2018 are:&lt;br /&gt;
&lt;br /&gt;
* System test coverage for Joomla! CMS core&lt;br /&gt;
* Update PHPUnit to newest version&lt;br /&gt;
* Code Sniffer rules&lt;br /&gt;
* New docker based infrastructure&lt;br /&gt;
* Extension Tests for B/C&lt;br /&gt;
&lt;br /&gt;
==History==&lt;br /&gt;
&lt;br /&gt;
=== 2017 ===&lt;br /&gt;
* Merge system tests into core (tests/codeception)&lt;br /&gt;
&lt;br /&gt;
=== Google Summer of Code ===&lt;br /&gt;
* JavaScript Tests for Joomla 4&lt;br /&gt;
* Parallel Testing setup&lt;br /&gt;
* PR Testing platform&lt;br /&gt;
&lt;br /&gt;
=== 2016 ===&lt;br /&gt;
&lt;br /&gt;
* System test architecture&lt;br /&gt;
&lt;br /&gt;
=== Google Summer of Code ===&lt;br /&gt;
* JavaScript Tests with Karma and Jasmine&lt;br /&gt;
* focus on Joomla system Tests and test architecture for Joomla&lt;br /&gt;
&lt;br /&gt;
=== GSoC 2014 ===&lt;br /&gt;
* focus on [[GSOC_2014_Project_Ideas#Project:_Webdriver_system_tests_for_CMS|Google Summer of Code 2014 Project: Webdriver_system_tests_for_CMS]]&lt;br /&gt;
&lt;br /&gt;
== Documents ==&lt;br /&gt;
* [[Writing_System_Tests_for_Joomla!_-_Part_1|Writing System Tests for Joomla!]]&lt;br /&gt;
* GSOC-Webdriver_system_tests_for_CMS repository: https://github.com/joomla-projects/GSOC-Webdriver_system_tests_for_CMS&lt;br /&gt;
* Writting system tests with Codeception: [[Testing Joomla Extensions with Codeception]]&lt;br /&gt;
* Javier Gomez presentation of Joomla System Testing at Joomla World Conference 2014: http://prezi.com/qsf17leurgbe/automated-system-testing-in-joomla/&lt;br /&gt;
* Joomla! Testing Overview 2016 session slides: https://www.slideshare.net/YvesHoppe/joomla-testing-jdd-germany-2016&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
* Joomla System tests: https://github.com/joomla/joomla-cms/tree/staging/tests/codeception&lt;br /&gt;
* com_weblinks: https://github.com/joomla-extensions/weblinks - Extension testing project with Codeception&lt;br /&gt;
* Old system tests repository: https://github.com/joomla-projects/gsoc16_browser-automated-tests&lt;br /&gt;
* Basic steps and actions for Joomla Selenium / Codeception tests: https://github.com/joomla-projects/joomla-browser&lt;br /&gt;
* JoRobo build scripts for building extensions: https://github.com/joomla-projects/jorobo&lt;br /&gt;
* Joomla Robo.li testing scripts: https://github.com/joomla-projects/joomla-testing-robo&lt;br /&gt;
* The Joomla [[Docker Container for System Tests]]&lt;br /&gt;
* Docker system testing image: https://github.com/joomla-projects/docker-systemtests&lt;br /&gt;
* JS Tests (merged in core): https://github.com/joomla-projects/gsoc16_js-unit-tests&lt;br /&gt;
* Joomla vagrant testing box: https://github.com/joomla-projects/vagrant-joomla-testing Groups&lt;br /&gt;
* Selenium package with webdrivers: https://github.com/joomla-projects/selenium-server-standalone&lt;br /&gt;
&lt;br /&gt;
[[Category:Production_Department]]&lt;br /&gt;
[[Category:Automated Testing]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Automated_Tests_Working_Group&amp;diff=425332</id>
		<title>Automated Tests Working Group</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Automated_Tests_Working_Group&amp;diff=425332"/>
		<updated>2017-06-24T09:35:40Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Minor update to history&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is the home page of the Automated Test Working Group, that is the result of combining the old System Testing Working Group and the Unit Testing Working Group.&lt;br /&gt;
&lt;br /&gt;
== Team Members ==&lt;br /&gt;
See the full list at: http://volunteers.joomla.org/working-groups/automated-tests-working-group&lt;br /&gt;
&lt;br /&gt;
== Goals ==&lt;br /&gt;
* to improve the Quality of Joomla CMS software&lt;br /&gt;
* to create learning material about &amp;quot;how to test&amp;quot; for the Joomla Community&lt;br /&gt;
&lt;br /&gt;
== Roadmap==&lt;br /&gt;
The next steps for 2017 / 2018 are:&lt;br /&gt;
&lt;br /&gt;
* System test coverage for Joomla! CMS core&lt;br /&gt;
* Update PHPUnit to newest version&lt;br /&gt;
* Code Sniffer rules&lt;br /&gt;
* New docker based infrastructure&lt;br /&gt;
* Extension Tests for B/C&lt;br /&gt;
&lt;br /&gt;
==History==&lt;br /&gt;
&lt;br /&gt;
=== 2017 ===&lt;br /&gt;
* Merge system tests into core (tests/codeception)&lt;br /&gt;
&lt;br /&gt;
=== Google Summer of Code ===&lt;br /&gt;
* JavaScript Tests for Joomla 4&lt;br /&gt;
* Parallel Testing setup&lt;br /&gt;
* PR Testing platform&lt;br /&gt;
&lt;br /&gt;
=== 2016 ===&lt;br /&gt;
&lt;br /&gt;
* System test architecture&lt;br /&gt;
&lt;br /&gt;
=== Google Summer of Code ===&lt;br /&gt;
* JavaScript Tests with Karma and Jasmine JS&lt;br /&gt;
* focus on Joomla system Tests and test architecture for Joomla&lt;br /&gt;
&lt;br /&gt;
=== GSoC 2014 ===&lt;br /&gt;
* focus on [[GSOC_2014_Project_Ideas#Project:_Webdriver_system_tests_for_CMS|Google Summer of Code 2014 Project: Webdriver_system_tests_for_CMS]]&lt;br /&gt;
&lt;br /&gt;
== Documents ==&lt;br /&gt;
* Joomla! Testing Overview session slides: https://www.slideshare.net/YvesHoppe/joomla-testing-jdd-germany-2016&lt;br /&gt;
* [[Writing_System_Tests_for_Joomla!_-_Part_1|Writing System Tests for Joomla!]]&lt;br /&gt;
* GSOC-Webdriver_system_tests_for_CMS repository: https://github.com/joomla-projects/GSOC-Webdriver_system_tests_for_CMS&lt;br /&gt;
* Writting system tests with Codeception: [[Testing Joomla Extensions with Codeception]]&lt;br /&gt;
* Javier Gomez presentation of Joomla System Testing at Joomla World Conference 2014: http://prezi.com/qsf17leurgbe/automated-system-testing-in-joomla/&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
* com_weblinks: https://github.com/joomla-extensions/weblinks - Extension testing project with Codeception&lt;br /&gt;
* Joomla core system tests: https://github.com/joomla-projects/gsoc16_browser-automated-tests&lt;br /&gt;
* Basic steps and actions for Joomla Selenium / Codeception tests: https://github.com/joomla-projects/joomla-browser&lt;br /&gt;
* JoRobo build scripts for building extensions: https://github.com/joomla-projects/jorobo&lt;br /&gt;
* Joomla Robo.li testing scripts: https://github.com/joomla-projects/joomla-testing-robo&lt;br /&gt;
* The Joomla [[Docker Container for System Tests]]&lt;br /&gt;
* Docker system testing image: https://github.com/joomla-projects/docker-systemtests&lt;br /&gt;
* JS Tests (merged in core): https://github.com/joomla-projects/gsoc16_js-unit-tests&lt;br /&gt;
* Joomla vagrant testing box: https://github.com/joomla-projects/vagrant-joomla-testing Groups&lt;br /&gt;
* Selenium package with webdrivers: https://github.com/joomla-projects/selenium-server-standalone&lt;br /&gt;
&lt;br /&gt;
[[Category:Production_Department]]&lt;br /&gt;
[[Category:Automated Testing]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=GSOC_2017_Project_Ideas&amp;diff=393362</id>
		<title>GSOC 2017 Project Ideas</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=GSOC_2017_Project_Ideas&amp;diff=393362"/>
		<updated>2017-04-11T21:48:09Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Added note that application has been closed&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Welcome to GSoC 2017 Ideas Page ==&lt;br /&gt;
Welcome to the [[GSOC_2017|Joomla! Google Summer of Code (GSoC) 2017 project]] ideas page. As we move forward with the 2017 version of the Joomla! GSoC, we will update this site with the ideas that have been submitted below.&lt;br /&gt;
&lt;br /&gt;
{{tip|title= Please note application has been closed for 2017!}} &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Please keep in mind that projects need to be realistic and something that is able to be functionally completed by a student working full time for about ten weeks.&lt;br /&gt;
&lt;br /&gt;
If you are interested in participating as a student please review the materials on applying that are available at [https://developers.google.com/open-source/gsoc/faq Google].  We strongly encourage you to ask questions about process and ideas on our [https://groups.google.com/forum/#!forum/jgsoc2017 joomla-gsoc mailing list].&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|250px|center|link=GSOC 2017]]&lt;br /&gt;
&lt;br /&gt;
== Guidelines on Submitting Ideas ==&lt;br /&gt;
&lt;br /&gt;
Everyone is invited to submit their ideas! You do not have to be a Google Summer of Code student or mentor to suggest one.&lt;br /&gt;
If you have ideas for the Joomla Google Summer of Code Program please send them to us at this form: &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
::&#039;&#039;&#039;* [https://docs.google.com/forms/d/e/1FAIpQLSd8up4QNOwkY9It0sHVJ-bfCXaam2p7OUuSZSCiW4U4Ywq-Rg/viewform GSoC 2017 Idea submission form]&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
There are some important guidelines to submit ideas, please read these carefully before adding your ideas:&lt;br /&gt;
* Ensure your idea is able to be completed in a fixed period of time. GSoC runs officially &#039;&#039;&#039;between May, 2017 and August 2017.&#039;&#039;&#039; This is a short period of actual coding time. Ideas should respect the time that students have available for the program. &lt;br /&gt;
* Keep ideas realistic. The ideas on this list should maintain a realistic amount of work for a single student, junior level-developer, who is working with a compressed timeline and a fixed completion (&#039;pencils down&#039;) date. &lt;br /&gt;
* The purpose of GSoC is to improve Joomla. This is not the time to add ideas for new extensions or features that may not be included. If the idea is related to the framework, please consult the framework team directly about new ideas to ensure there is interest in having the package included as an official Joomla Framework package. &lt;br /&gt;
* When in doubt, reach out. If you&#039;re unsure if your idea belongs on this list, please post to the GSoC 2017 mailing list and ask about the community&#039;s interest. &lt;br /&gt;
* No documentation-focused projects. Google Summer of &#039;&#039;Code&#039;&#039; is a program about code. We expect our students to document their work, but writing documentation for Joomla as a project does not align with the goals of GSoC. &lt;br /&gt;
&lt;br /&gt;
== Idea Pool ==&lt;br /&gt;
&lt;br /&gt;
====Project I: Webservices in Joomla! ====&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Integrating a rest api endpoint (like api/) into the Joomla Core. More information is going to follow in the next days.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Working REST Api for core. Including com_content as reference.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, RESTful Webservices. &#039;&#039;&#039;Nice to have:&#039;&#039;&#039; Joomla MVC, Swagger, Knowledge of APIs&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:fastslack@gmail.com Matias Aguirre],[mailto:anibal.sanchez@gmail.com Anibal Sanchez],[mailto:george.wilson@community.joomla.org George Wilson] &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
====Project II: Improved Routing ====&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Even with the new Router there is much room for improvement in the routing area. This project aims to improve the SEO capabilities of Joomla. This will be achieved by looking at a component by component option of disabling having duplicate URLs by only having one way to access an item from within a component. This will also require changes to modules to allow them to be assigned to orhan homepages.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Improved Routing handling in components by only having a single url for each page (enabled on a per component basis for b/c)&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP &#039;&#039;&#039;Nice to have:&#039;&#039;&#039; Joomla MVC, SEO experience&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:chris@1aseo.de Christopher Wagner],[mailto:rishivishwakarma24x7@gmail.com Rishi Vishwakarma],[mailto:gunjan.patel@community.joomla.org Gunjan Patel]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
====Project III: Cloud filesystems for media manager ====&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;The new media manager for Joomla! 4 contains a rest like API to fetch the folder structure and file information. This is limited to the local filesystem. For Joomla! 4 it would be nice to break that API up and to allow extension developers to add cloud based filesystems through plugins.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Media manager API rewrite to support the Joomla! plugins for cloud based filesystems.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, File system. &#039;&#039;&#039;Nice to have:&#039;&#039;&#039; Joomla! MVC, Rest, API/Framework integration&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:allon.moritz@community.joomla.org Allon Moritz],[mailto:david.neukirchen@community.joomla.org David Neukirchen]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
====Project IV: Improvements and extended coverage for the parallel testing environment ====&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Recently the new container-based automated testing environment was developed (final development stages ongoing when writing this proposal), supporting multiple Joomla and PHP versions and increasing speed for the current codeception-based testing system: https://github.com/joomla-projects/joomla-testing.&lt;br /&gt;
&lt;br /&gt;
There are areas of opportunity that the current testing system is not covering right now, including covering the tests of the CMS itself, so I would like to propose improving 4 specific areas, explained in the expected results.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;1. Right now it can test Joomla extensions, but it should also have support for testing the CMS itself, by assuming that it needs to start with the testing of the CMS installer (prerequisite), next the tests of the CMS itself and finally the uninstall process.&amp;lt;br&amp;gt;&lt;br /&gt;
2. The virtualisation package https://github.com/joomla-projects/virtualisation is unfinished and has little coverage. Right now it can handle basic Apache, PHP and MySQL installations. The goal is to support virtualisation environments including Postgres, Nginx and multiple Joomla versions including staging for extension testing. It also needs to be integrated to the new automated testing environment since it&#039;s not using it now.&amp;lt;br&amp;gt;&lt;br /&gt;
3. A better and codeception-based built-in testing selection system needs to be created, so that test order is selected not based in a configuration xml file but using the dependencies made in the codeception tests itself. This also means applying this new structure to the Weblinks extension repo and the CMS tests.&amp;lt;br&amp;gt;&lt;br /&gt;
4. An automated nightly builder of the staging version of Joomla so it can be used by the virtualisation package to test extensions against a pre-installed staging version.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP and object-oriented programming. Knowledge of system deployment including basic server setup like Apache, PHP, MySQL, Postgres, Nginx. Container-based virtualisation concepts. &#039;&#039;&#039;Nice to have:&#039;&#039;&#039; Codeception&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:nbraczek@bsds.de Niels Braczek],[mailto:tito.alvarez@community.joomla.org Tito Alvarez]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
====Project V: Testing Dashboard - A birds eye view on the state of testing ====&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;The Testing Dashboard should give people a compensative overview how the state of testing for our code base is. It collects data from the different testing areas and shows the actual result and some kind of historical data.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;&lt;br /&gt;
*Documentation what are the different testing areas&lt;br /&gt;
*Documentation how we get details about testing areas&lt;br /&gt;
*Developing scripts to get the information and save the data&lt;br /&gt;
*Developing a website to show the results (could be a Joomla! Extension) &lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, MySQL, JavaScript. &#039;&#039;&#039;Nice to have:&#039;&#039;&#039; Joomla MVC, PHPUnit, Basic Statistics knowledge, REST&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:nbraczek@bsds.de Niels Braczek],[mailto:robert.deutz@community.joomla.org Robert Deutz]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
====Project VI: Publishing Workflow in Joomla! ====&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;The Joomla! Core offers at the moment a very static publishing workflow (namely: published, unpublished, archived and trashed). The idea of this project is to implement an unlimited workflow solution, so everyone can map his/her/its workflow for all supporting components.&lt;br /&gt;
&lt;br /&gt;
The basic idea is, that we have 3 conditions: - the item is visible (published) - the item is not visible (unpublished) - the item is deleted (trashed)&lt;br /&gt;
&lt;br /&gt;
(&amp;quot;Archived&amp;quot; is not needed anymore because it could be achived with an individual state)&lt;br /&gt;
&lt;br /&gt;
This conditions are not &amp;quot;direct publishing states&amp;quot; like at the moment (where you can set a item e.g. to publish), but more &amp;quot;features&amp;quot; of the future states.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====So how should the new system work?=====&lt;br /&gt;
&lt;br /&gt;
- The user goes to the workflow component and clicks &amp;quot;new&amp;quot; - He/she/it insert a workflow title (let&#039;s say &amp;quot;my workflow&amp;quot;) - Optional the user can set up different options like: description, publishing state, access level, ACL permissions etc. - After saving he comes to the workflow view, where he/she/it can define the new workflow - Here he has two options: create a new &amp;quot;workflow state&amp;quot; or create a &amp;quot;transition&amp;quot; (ofc. he can delete/edit existing ones, too.)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Workflow state:=====&lt;br /&gt;
&lt;br /&gt;
Workflow states are something like the current publishing states (published, unpublished, archived, trashed). That means, items will be set to this state and will be shown (or not) regarding to the property of the state.&lt;br /&gt;
&lt;br /&gt;
Every state has one condition (from above), so a state could have the condition &amp;quot;published&amp;quot; (means, an item with this state will be visible in the frontend), &amp;quot;unpublished&amp;quot; (means, an item with this state will not be visible in the frontend) or &amp;quot;trashed&amp;quot; (means, an item with this state will neither be shown in front- nor backend (until a user filters for it))&lt;br /&gt;
&lt;br /&gt;
So a &amp;quot;workflow state&amp;quot; is a very simple element which (in a basic version) needs only a title and a dropdown for the &amp;quot;condition&amp;quot; (ofc. there could also be parameters like a description).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Transition=====&lt;br /&gt;
&lt;br /&gt;
A transition defines the change from one &amp;quot;workflow state&amp;quot; to another one. So it holds the starting &amp;quot;workflow state&amp;quot; and the target &amp;quot;workflow state&amp;quot;. Additional it has the requirements defined &amp;quot;who can execute the transition&amp;quot;. That means, each transition has its ACL integration and a user can define who can execute this transition.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
- The user creates now different &amp;quot;workflow states&amp;quot; and &amp;quot;transitions&amp;quot; to implement his/her/its workflow. For example:&lt;br /&gt;
&lt;br /&gt;
Worflow states: 1. Needs review (condition: unpublished) 2. Needs rework (condition: unpublished) 3. Ready for publishing (condition: unpublished) 4. Online (condition: unpublished) 5. Not needed anymore (condition: trashed)&lt;br /&gt;
&lt;br /&gt;
Transitions: a. From 1. =&amp;gt; 2. b. From 2. =&amp;gt; 1. c. From 1. =&amp;gt; 3. d. From 3. =&amp;gt; 4 e. From 1. =&amp;gt; 5. f. From 2. =&amp;gt; 5. g. From 3. =&amp;gt; 5. h. From 4. =&amp;gt; 5. i. From 5. =&amp;gt; 1.&lt;br /&gt;
&lt;br /&gt;
All transitions have ofc. individual ACL permissions where the user can define which user groups can execute the transition and change the &amp;quot;workflow state&amp;quot;&lt;br /&gt;
&lt;br /&gt;
So as summary you could say: the main idea is to use the current publishing states as &amp;quot;conditions&amp;quot; and allow unlimited repeatable usage of this states.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;&lt;br /&gt;
*At the end of the project, there should be a new component in Joomla! in which a user can define unlimited own publishing workflows. &lt;br /&gt;
*As basic (none deleteable, none changeable) workflow, the current publishing workflow is implemented, to make sure, we have B/C. &lt;br /&gt;
*The workflows should respect the Joomla! ACL (Who can see, who can do actions (activtate)). &lt;br /&gt;
*The workflows should be assignable to all Joomla! core components, which could have a publishing workflow (Banners, Contacts, Contents, Menus, Categories and the worklfow component itself) via the configuration of the component. &lt;br /&gt;
*If the assigned workflow is changed, there should be a check, if there are no conflicts (like, before we have a publishing state &amp;quot;ready for review&amp;quot; and now not) and if so, offers a &amp;quot;resolve view&amp;quot;. &lt;br /&gt;
*The publishing workflow should be respected by the components in the frontend. - The backend filters will show the states in the filter dropdown.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Additional goals (if time left):=====&lt;br /&gt;
*The student could implement a drag&amp;amp;drop functionality to set up new workflows in a very smooth way.&lt;br /&gt;
*The student could implement different filter parameters to modules/menu link types where a Joomla! user can choose, which publishing states he want to show or for e.g. article commit, what is the starting state of new submissions.&lt;br /&gt;
*Multilingual&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, JavaScript. &#039;&#039;&#039;Nice to have:&#039;&#039;&#039; Joomla MVC&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:benjamin@benjamintrenkle.de Benjamin Trenkle],[mailto:shubhamnba2009@gmail.com Shubham Rajput], [mailto:kontakt@sven-hurt.de Sven Hurt], [mailto:parth.lawate@community.joomla.org Parth Lawate], [mailto:buddhimawijeweera@gmail.com Buddhima Wijeweera]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
====Project VII: Issue Tracker Release Section ====&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Important Note:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt; Note: This project will be merged with Project VIII Refactor the Issue Tracker Application&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Create a new section for the Joomla! Issue Tracker that holds a summary of a project&#039;s activity during the release cycle. See https://github.com/joomla/jissues/issues/506 for additional discussion.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;A new section is added to the issue tracker.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, MVC, dependency injection. &#039;&#039;&#039;Nice to have:&#039;&#039;&#039; Joomla! Framework&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:nbraczek@bsds.de Niels Braczek],[mailto:michael.babker@joomla.org Michael Babker]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Project VIII: Refactor the Issue Tracker Application ====&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Important Note:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt; Note: This project will be merged with Project VII Issue Tracker Release Section&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
    &amp;lt;td&amp;gt;Work is started on refactoring the issue tracker application to use more modern development practices, to include proper dependency injection into various elements (reduced use of passing the DI container as a parameter into classes) and restructured classes have automated test coverage. At least three of the application&#039;s &amp;quot;apps&amp;quot; (loosely compared to a Joomla! CMS component) as well as the base application framework should be updated prior to the completion of the GSoC period.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;A new section is added to the issue tracker.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, MVC, dependency injection, Unit Testing. &#039;&#039;&#039;Nice to have:&#039;&#039;&#039; Joomla! Framework&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:nbraczek@bsds.de Niels Braczek],[mailto:michael.babker@joomla.org Michael Babker]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Project IX: Expand the Extension Manager ====&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;&lt;br /&gt;
The extension manager can do with a few more features and a redesigned UI. The project would add the following features to the extension manager:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Option to remove the database tables upon un-installation of a component or package if user wants to&lt;br /&gt;
*Show the changelog for an update&lt;br /&gt;
*Add a field to enter a license key for a given extension.&lt;br /&gt;
*Database fix to also check the SQL update files of installed components. The fix now only checks the core database.&lt;br /&gt;
*Option to edit an update site&lt;br /&gt;
*Signed installation archives. This is to make sure only original archives are installed.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;These new features implemented in the extension manager part of Joomla.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, MVC, Javascript. &#039;&#039;&#039;Nice to have:&#039;&#039;&#039; Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:llewellyn@vdm.io Llewellyn van der Merwe],[mailto:peter.martin@community.joomla.org Peter Martin], [mailto:roland.dalmulder@community.joomla.org Roland Dalmulder]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Project X: JavaScript Tests for Joomla 4 ====&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Increase and improve the JavaScript testing suite based on Jasmine and Karma for Joomla 4.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Almost complete coverage of the Joomla 4 JavaScript code including the new media manager.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;JavaScript, Karma, Jasmine, jQuery. &#039;&#039;&#039;Nice to have:&#039;&#039;&#039; Travis and Drone (CI) experience, Vue, NPM, Node&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:truchiranga@gmail.com Thanuditha Ruchiranga],[mailto:ashan256@gmail.com Ashan Fernando]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Project XI: Refactoring the Help Screens localised on JDocs and served in the Joomla! backend through the Help server to make them more manageable by volunteers ====&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;The Joomla! backend includes an integrated context-sensitive help system that accesses pages in HTML or XML served from a directory within the Joomla! installation, or more commonly, from an external help server. The documentation wiki contains the &amp;quot;master&amp;quot; help screens for all Joomla! versions.&lt;br /&gt;
&lt;br /&gt;
The Help Screens are numerous (for the currently supported version: https://docs.joomla.org/Help36:Help_screens) and it became unmanageable, mainly because of the high number of new Joomla! Versions and the low number of volunteers to maintain them. Keeping them up to date (content as well as numerous screenshots of the backend) is important for our users but it has became an impossible goal, even more because they also need to be localised.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;A re-thought of the Help Screens to provide a more manageable and easier system that can require less time to keep the documentation up to date (on JDocs and so in the Joomla! backend).&lt;br /&gt;
&lt;br /&gt;
For the display in the backend, a possibility could be to have a kind of guided system. Then making the help button Open up just a how to page that&#039;s based on whatever component you&#039;re using. The guidance system could run off of JavaScript and of course you can shut it off within a click. (ex: https://www.google.com/amp/s/webresourcesdepot.com/11-awesome-jquery-site-tour-plugins-for-guiding-users-with-style/amp/?client=safari) The original source of the Help Screens will need to stay on JDocs.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;PHP, JavaScript, JSON. &#039;&#039;&#039;Nice to have:&#039;&#039;&#039; MediaWiki&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:sandra.thevenet@community.joomla.org Sandra Thevenet], Tom Hutchison&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
----&lt;br /&gt;
====Project XII: Gherkin Editor  ====&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;To ease the creation of new acceptance tests, an editor would be useful, that provides existing and suitable test routines in a select field (similar to the search field in a browser, or the address field in a mail client). That helps to find a wording, that utilises re-use of existing test code instead of forcing rewrites.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;A package that can be integrated into JTracker.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Joomla Deployment Setup, PHP, understanding of Gherkin based acceptance tests&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:nbraczek@bsds.de Niels Braczek],[mailto:astrid.guenther@community.joomla.org Astrid Guenther]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====Project XIII: Joomla PR Testing Platform  ====&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Project Description:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Today when a developer send a Pull Requests(PR) to Joomla Github Repository, a reviewer or a tester need to manually setup a environment with the PR code to test it. This project is to focus in building a basic platform using multi-container docker and integrating with Github, which allows to automatically get the code of the PR and build a running Joomla application and provide the link inside the PR itself (Similar to how Travis Build Happens). Since we are dealing with limited this solution should self manage efficiently utilizing available resources.&lt;br /&gt;
&lt;br /&gt;
Use case&lt;br /&gt;
1) User makes a PR&lt;br /&gt;
2) Similar to Travis, a Build process occurs and a link will be available in the PR&lt;br /&gt;
3) This is used by a tester to test the functionality (Making regression testing and verification process faster)&lt;br /&gt;
4) This solution should self manage efficiently utilizing available resources&lt;br /&gt;
5) Based on Docker&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Expected Results:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;For each pull request, show a test link in build status to test the Pull Request&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;  &lt;br /&gt;
  &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Knowledge Prerequisite:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Joomla Deployment Setup, DevOps, Github API, Docker, Docker-Compose&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt; &lt;br /&gt;
 &amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Difficulty:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Medium to Hard&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; style=&amp;quot;width:100%&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th&amp;gt;&#039;&#039;&#039;Mentors:&#039;&#039;&#039;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt; &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;[mailto:ashan256@gmail.com Ashan Fernando]&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
 &amp;lt;/table&amp;gt;&lt;br /&gt;
[[Image:Gsoc2016.png|50px|center]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Category:Google Summer of Code 2017]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Unit_Testing&amp;diff=392957</id>
		<title>Unit Testing</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Unit_Testing&amp;diff=392957"/>
		<updated>2017-04-10T17:22:20Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: At least some updates so people not contact wrong persons&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{JSplit}}&lt;br /&gt;
Note that this article is badly out of date.&lt;br /&gt;
== News and Updates ==&lt;br /&gt;
2011 10 26 Use version 3.5.15 of PHPUnit. Please see reference material on github.&lt;br /&gt;
&lt;br /&gt;
2009 10 06: Tests now depend on the SVN version of PHPUnit 3.4.1.&lt;br /&gt;
&lt;br /&gt;
2008 06 24: Update to reflect move of PHPUnit code from branch to trunk (former trunk now in /branches/old_simpletest).&lt;br /&gt;
&lt;br /&gt;
2008 06 22: Add information on limiting tests by version.&lt;br /&gt;
&lt;br /&gt;
2008 06 21: Added—class-exclude, --sequence-exclude, and—test-exclude options.&lt;br /&gt;
&lt;br /&gt;
2008 06 21: PHPUnit has been updated to version 3.2.21 with SVN rev 10436. Please update.&lt;br /&gt;
&lt;br /&gt;
== Unit Testing ==&lt;br /&gt;
Unit testing is not only an essential part of a good Quality Control program, it is an aid to development as well. Writing new tests before writing code helps focus the developer on the problem at hand. The practice also encourages writing smaller, more loosely coupled, more reusable, and more maintainable code units and these benefits often outweigh the benefits gained by treating unit tests solely as a QC tool. When used in this manner correctness becomes more a by-product of the process than the goal.&lt;br /&gt;
For a good general discussion of unit testing, visit the [http://en.wikipedia.org/wiki/Unit_test Wikipedia article].&lt;br /&gt;
&lt;br /&gt;
=== Unit Testing in Open Source ===&lt;br /&gt;
Open source projects, with multiple developers working in parallel around the world, can greatly benefit from unit testing. The main benefits are:&lt;br /&gt;
* Unit tests help highlight cases where seemingly minor changes cause unexpected breakage.&lt;br /&gt;
* Unit tests help clearly specify how a class should behave.&lt;br /&gt;
* Unit tests can expose design flaws very early in development.&lt;br /&gt;
* Unit tests make great examples. They are a great place for developers to learn how to use the code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== The Testing Hierarchy: Unit, Subsystem, Integrated ===&lt;br /&gt;
Software testing systems usually run through a spectrum from &amp;quot;pure&amp;quot; unit tests through to fully integrated systems tests. We&#039;ve described low level unit tests above. Integrated testing typically involves some sort of script that simulates user actions and then verifies that the result matches what&#039;s expected. This sort of &amp;quot;end to end&amp;quot; test verifies that all parts of the system are working correctly.&lt;br /&gt;
&lt;br /&gt;
It&#039;s unfortunate that there is no clear nomenclature to describe all the intermediate stages of testing. The next stage beyond testing a single unit of code is subsystem testing. A subsystem test verifies that two or more units of code are interacting correctly to produce the desired result. In the simplest case, a subsystem test can be created simply by replacing mock objects with real objects and running unit tests on the top level module. In practise, this tends to not work as well as expected, because the original unit test data wasn&#039;t designed for a subsystem test, or because the nature of the test cases needs to be changed in order to fully test the subsystem. After all there is little point in simply repeating the unit test cases; the objective of a subsystem test should be to test boundary conditions and special cases that would be difficult to duplicate in unit tests.&lt;br /&gt;
&lt;br /&gt;
Once a subsystem has been tested, it can be integrated into a larger system, which is still a subset of the whole product. Tests can be written for larger and larger subsystems, but at each stage the complexity of the tests increases. At some point, the effort required to hand craft tests exceeds the benefits of running them. This is where integrated testing comes in.&lt;br /&gt;
&lt;br /&gt;
Integrated testing involves recording a user&#039;s interaction with the system into a script that can be replayed. The testing framework then compares the system&#039;s response with the expected response and passes or fails the test. The PHPUnit testing framework that we use has the ability to work with [http://seleniumhq.org/ Selenium], a browser based test automation tool. Writing a functional test using Selenium is documented [http://docs.joomla.org/Functional_Testing#Writing_Functional_Tests here].&lt;br /&gt;
&lt;br /&gt;
==== Test Objects ====&lt;br /&gt;
The purpose of unit tests is to isolate a module of code. A test that tests only one thing provides better information than a test that involves several object interactions. But how do we isolate an object from its dependencies? By writing stub classes. [http://xunitpatterns.com/Mocks,%20Fakes,%20Stubs%20and%20Dummies.html xUnit Patterns] defines a the hierarchy of dummy classes, ranging from simple to complex:&lt;br /&gt;
* Dummy - Defines attributes and methods of a dummy class (not particularly useful in PHP).&lt;br /&gt;
* Fake - Provides canned responses to method calls and fixed attribute values. Good for speed.&lt;br /&gt;
* Stub - Allows the test to define responses to method calls (return values, exceptions) to simulate the dependent object.&lt;br /&gt;
* Spy - A Fake or Stub that records method calls and parameters for later analysis.&lt;br /&gt;
* Mock - A Fake or Stub with a set of expectations—method calls and parameters—that are automatically verified for correctness.&lt;br /&gt;
&lt;br /&gt;
=== Unit Testing in Joomla! ===&lt;br /&gt;
Unit testing capabilities in Joomla are steadily developing. [Add note re amount of coverage for platform by unit tests.]&lt;br /&gt;
&lt;br /&gt;
The [https://github.com/joomla/joomla-platform Joomla Platform GitHub repository] contains PHPUnit tests within the /tests subdirectory.  See [http://docs.joomla.org/Running_Automated_Tests_for_Version_1.6 Running Automated Tests for Version 1.6] for instructions on setting up unit testing in your IDE.&lt;br /&gt;
&lt;br /&gt;
==== The Unit Test Team ====&lt;br /&gt;
If you can commit to the Joomla code base, then you should consider yourself part of the automated testing team! There is also a public Glip group for questions around testing (Testing &amp;amp; CI General Public Group). &lt;br /&gt;
&lt;br /&gt;
Writing tests concurrently with code (or even before) is a good way to not only save development time, but a great tool for defending against regressions. Writing tests early in the development cycle also helps identify and resolve design issues sooner, which reduces refactoring.&lt;br /&gt;
&lt;br /&gt;
If you want to get started on unit testing, get in touch with Robert Deutz (rdeutz) or Yves Hoppe (yvesh). Either of us will be happy to help out.&lt;br /&gt;
&lt;br /&gt;
==== Current Work ====&lt;br /&gt;
* There is no longer any need to patch the main code to enable unit tests.&lt;br /&gt;
* Basic techniques for mock objects are defined.&lt;br /&gt;
* Strategies for dealing with local configuration is not yet complete, but there is a plan.&lt;br /&gt;
* Files of the form class-sequence-type-Test.php, for example JObject-0000-class-Test.php use PHPUnit.&lt;br /&gt;
* The JDate tests present a good example of a data-driven test, but they won&#039;t run on the current 1.5 code base (there are some proposed API changes as a result of unit test development).&lt;br /&gt;
* Previously functional tests, such as JFTP, haven&#039;t been moved to the PHPUnit environment yet.&lt;br /&gt;
* The custom test runner is no longer needed. The current tests will run with the latest of PHPUnit 4.8.Thanks to Sebastian Bergmann for his excellent work on an excellent project!&lt;br /&gt;
&lt;br /&gt;
==== Writing Unit Tests ====&lt;br /&gt;
At risk of stating the obvious, in the &amp;quot;purest&amp;quot; case the purpose of a unit test is to &#039;&#039;isolate a unit of code from its environment and to test the operation of that code&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
This isolation is usually achieved by writing dummy classes that emulate the code unit&#039;s environment. These dummy objects can be passive, by simply simulating the environment, or they can be more active, keeping track of how they are being used by the test unit and reporting any variations from the expected behaviour. See [[Unit Testing Mock Objects|Mock Objects in Joomla]] for a detailed example.&lt;br /&gt;
&lt;br /&gt;
An interesting aspect of writing tests is that they become &#039;&#039;de facto&#039;&#039; detailed technical specifications of the interfaces between units of code. The fact that these specifications can be verified in an automated way makes them a superb resource when refactoring code.&lt;br /&gt;
&lt;br /&gt;
The test code has a few templates designed to kick-start a test. They are:&lt;br /&gt;
&lt;br /&gt;
/unittest/sample-datatest-php.txt&lt;br /&gt;
/unittest/sample-simpletest.php.txt&lt;br /&gt;
&lt;br /&gt;
Here are some example tests: [[Unit Testing -- a Simple Example|Simple Example]], [[Unit Testing -- Data Driven Example|Data Driven Example]], [[Unit Testing -- Plugin Example|Plugin Example]], [[Unit Testing -- UI Example|UI Example]].&lt;br /&gt;
&lt;br /&gt;
==== Running Unit Tests ====&lt;br /&gt;
Test files follow the form classnameTest.php, for example JObjectTest.php. For tests that are not class based, use the name of the file being tested.&lt;br /&gt;
&lt;br /&gt;
Joomla unit tests use the standard PHPUnit test runner.  See http://www.phpunit.de for documentation.&lt;br /&gt;
&lt;br /&gt;
== How to Get it Running ==&lt;br /&gt;
&lt;br /&gt;
Before you start make sure you have installed PHPUnit and of course PHP (5!) properly...&lt;br /&gt;
&lt;br /&gt;
To get the unit tests to run on your Joomla! installation, perform the following steps:&lt;br /&gt;
* Create an instance of your Joomla! installation. Since you will be using SVN to check out the testing project, you don&#039;t want to check out the Joomla! with SVN. Instead, simply unpack a normal Joomla! archive. If you are using Eclipse, you can create a folder in your Eclipse workspace for the Joomla! installation, but don&#039;t create an Eclipse project yet.&lt;br /&gt;
* In the root checkout (or export) the latest version of the unit test code from SVN &#039;&#039;&amp;quot;/testing/trunk/1.5/unittest&amp;quot;&#039;&#039; or &#039;&#039;&amp;quot;/testing/trunk/1.6/unittest&amp;quot;&#039;&#039; to your installation base. This will create a &#039;&#039;&amp;quot;/unittest&amp;quot;&#039;&#039; sub-folder under your joomla installation. If you are using Eclipse, Import the project from the SVN and use the same folder in your Eclipse workspace you used above.&lt;br /&gt;
* From the command line, change to the unittest directory.&lt;br /&gt;
* Run the unit test from the command prompt using the following command: &amp;lt;code&amp;gt;phpunit tests&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The unit test will the run, and the results are rendered. You will see a series of dots for each passed test and other letters for failed tests. &lt;br /&gt;
&lt;br /&gt;
See http://www.phpunit.de/manual/current/en/textui.html for help using the—filter switch to run only certain tests.  There are also many other command line switches you can use to get results in various formats.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
The provided configurations should work out of the box. We have seen problems with it (currently the cause is unknown). If you get an error like below, the solution is pretty easy.&lt;br /&gt;
&lt;br /&gt;
 file=/var/www/unittest/runtests.php&lt;br /&gt;
 posn=17&lt;br /&gt;
 base=runtests.php&lt;br /&gt;
 /var/www&lt;br /&gt;
  JPATH_BASE does not point to a valid Joomla! installation:&lt;br /&gt;
 JPATH_BASE = /var/www&lt;br /&gt;
  Please modify your copy of &amp;quot;TestConfiguration.php&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Modify the &#039;&#039;&amp;quot;TestConfiguration.php&amp;quot;&#039;&#039; file and change the definition of the JPATH_BASE so it points to the path of you Joomla! installation, in the example below the Joomla! installation is installed at &amp;quot;&#039;&#039;/var/www/update&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
 define(&#039;JPATH_BASE&#039;, &#039;/var/www/update&#039;);&lt;br /&gt;
&lt;br /&gt;
== Frequently Asked Questions ==&lt;br /&gt;
&#039;&#039;&#039;Why can&#039;t I use &amp;quot;phpunit &#039;&#039;testname.php&#039;&#039;&amp;quot; to run my tests?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The test facility has to do some work to be able to load the &amp;quot;Joomla!&amp;quot; framework and to be able to inject mock classes. It&#039;s difficult to do this from the PHPUnit test runner, so we built our own. Also, the Joomla test runner has specific options designed to make it easy to select specific tests. Over time we will add more functionality to the test runner so it has many of the capabilities of the phpunit command.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[http://www.phpunit.de/manual/current/en/ PHPUnit Manual]&lt;br /&gt;
&lt;br /&gt;
[[Category:Bug Squad]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Testing]]&lt;br /&gt;
[[Category:Automated Testing]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Joomla_CodeSniffer&amp;diff=372247</id>
		<title>Joomla CodeSniffer</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Joomla_CodeSniffer&amp;diff=372247"/>
		<updated>2017-03-16T18:39:29Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Added doc on how to add the composer bin directory to the path&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== A Nose For Joomla ==&lt;br /&gt;
This is a custom coding standard for the PHP CodeSniffer that attempts to codify and enforce the Joomla coding standards. This article covers how to set the automatic code style checker. It consists of three steps:&lt;br /&gt;
# Install PHP CodeSniffer (phpcs).&lt;br /&gt;
# Clone the Joomla Code Style (for use with for phpcs).&lt;br /&gt;
# Configure your IDE to work with PHP CodeSniffer and Joomla Code Style.&lt;br /&gt;
&lt;br /&gt;
[[File:CodeSnifferInAction.jpg|center|thumb|300px|PHP Code Sniffer in action]]&lt;br /&gt;
&lt;br /&gt;
==Why?==&lt;br /&gt;
- Coherent and consistent coding practice makes the files look more professional. Conflicting styles in the same project (or worse, the same file) not only look sloppy, they encourage further sloppiness.&lt;br /&gt;
&lt;br /&gt;
- When all code complies with the same standard, bad code is easier for everyone to spot.&lt;br /&gt;
&lt;br /&gt;
- It makes it easier for someone new to a particular file in the project to find and fix errors or extend functionality.&lt;br /&gt;
&lt;br /&gt;
- If there is no consistent standard maintained, sometimes developers will reformat the code to suit themselves. This causes a wide range of changes in the code repository. If there is a later problem, a significant change could be lost in the chaff produced by a diff.&lt;br /&gt;
&lt;br /&gt;
==1. Installation of PHP Code Sniffer (phpcs)==&lt;br /&gt;
===Composer (recommended)===&lt;br /&gt;
PHP Code Sniffer is available via Composer. It can be installed system-wide with the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;composer global require &#039;squizlabs/php_codesniffer=1.*&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On &#039;&#039;&#039;Linux&#039;&#039;&#039; PHP Code Sniffer (phpcs) will be installed under your user folder: &lt;br /&gt;
* Symbolic Link: &#039;&#039;&#039;~/.composer/vendor/bin/phpcs&#039;&#039;&#039;&lt;br /&gt;
* The file: &#039;&#039;&#039;~/.composer/vendor/squizlabs/php_codesniffer/scripts/phpcs&#039;&#039;&#039;&lt;br /&gt;
or (for example OpenSuse)&lt;br /&gt;
* Symbolic Link: &#039;&#039;&#039;~/.config/composer/vendor/bin/phpcs&#039;&#039;&#039;&lt;br /&gt;
* The file: &#039;&#039;&#039;~/.config/composer/vendor/squizlabs/php_codesniffer/scripts/phpcs&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
On &#039;&#039;&#039;Windows&#039;&#039;&#039; PHP Code Sniffer (phpcs) will be installed under your user folder:&lt;br /&gt;
* Symbolic Link: c:\Users\Username\AppData\Roaming\Composer\vendor\bin\phpcs&lt;br /&gt;
* The file: c:\Users\Username\AppData\Roaming\Composer\vendor\squizlabs\php_codesniffer\scripts\phpcs&lt;br /&gt;
&lt;br /&gt;
=== Add composer bin directory to your $PATH ===&lt;br /&gt;
&lt;br /&gt;
In order to execute PHP Code sniffer from anywhere on Linux or Mac command line you have to add .composer/vendor/bin to your $PATH variable.&lt;br /&gt;
&lt;br /&gt;
To do this persistant edit your shells start file, like your .profile or .bash_profile file depending which shell you are using (echo $SHELL shows you which one you are using).&lt;br /&gt;
&lt;br /&gt;
Add the following line to the file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;export PATH=$PATH:~/.composer/vendor/bin&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===PEAR===&lt;br /&gt;
First you have to install the [http://pear.php.net/package/PHP_CodeSniffer/ PHP CodeSniffer]. This set of files is intended to work with phpcs version 1.4, so behavior with any other version is undefined. One way to do this is to start the console (cmd.exe in windows environments) and type:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;pear install PHP_CodeSniffer&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To specify a specific version of the PHP CodeSniffer, type:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;pear install PHP_CodeSniffer-1.5.x&amp;lt;/code&amp;gt; (specify a number for x, in June 2016 was 1.5.6)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Important note:&#039;&#039;&#039; currently the latest PHPcs is the 2.x series. But they are under development so &#039;&#039;&#039;Joomla Sniffers are not yet compatible with this 2.x version&#039;&#039;&#039;. PEAR gives you the option to install it by default but since Joomla sniffers will not work, always install PHPCS 1.5. version not 2.0.&lt;br /&gt;
&lt;br /&gt;
PEAR will handle the whole installation by itself.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;A note for windows users:&#039;&#039;&#039; If you are using XAMPP, while installing the PHPCS make sure in cmd.exe the path is set to &amp;lt;path-to-xampp&amp;gt;xampp/php. After that use codeː &amp;lt;code&amp;gt;pear install PHP_CodeSniffer-1.5.x&amp;lt;/code&amp;gt; to install PHPCS.&lt;br /&gt;
Sometimes while running the command &amp;lt;code&amp;gt;pear install PHP_CodeSniffer-1.5.x&amp;lt;/code&amp;gt; in cmd.exe user may get these 2 error like:&amp;lt;br /&amp;gt;&lt;br /&gt;
1. &amp;lt;code&amp;gt;C:\xampp\php&amp;gt;pear install PHP_CodeSniffer-1.5.6 No releases available for package &amp;quot;pear.php.net/PHP_CodeSniffer&amp;quot;install failed&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Just clear the cache using the command: &amp;lt;code&amp;gt;pear clear-cache&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
After that you are good to go.&amp;lt;br /&amp;gt;&lt;br /&gt;
2. &amp;lt;code&amp;gt;ERROR: failed to mkdir C:\php\pear\tests\PHP_CodeSniffer\CodeSniffer\Core\File&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
This error arises because config values set for different pear related directories are wrong.&amp;lt;br /&amp;gt;&lt;br /&gt;
Use the following command one by oneː&amp;lt;br /&amp;gt;&lt;br /&gt;
1. &amp;lt;code&amp;gt;pear config-set doc_dir &amp;lt;PATH-TO-XAMPP&amp;gt;\xampp\php\pear&amp;lt;/code&amp;gt;(e.g.pear config-set doc_dir C:\xampp\php\pear)&amp;lt;br /&amp;gt;&lt;br /&gt;
2. &amp;lt;code&amp;gt;pear config-set cfg_dir &amp;lt;PATH-TO-XAMPP&amp;gt;\xampp\php\pear&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
3. &amp;lt;code&amp;gt;pear config-set data_dir &amp;lt;PATH-TO-XAMPP&amp;gt;\xampp\php\pear&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
4. &amp;lt;code&amp;gt;pear config-set test_dir &amp;lt;PATH-TO-XAMPP&amp;gt;\xampp\php\pear&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
5. &amp;lt;code&amp;gt;pear config-set www_dir &amp;lt;PATH-TO-XAMPP&amp;gt;\xampp\php\pear &amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then download and unzip the [https://github.com/joomla/coding-standards Joomla! CodeSniffer] and copy the contents of it into /path/to/PHP_CodeSniffer/Standards/Joomla.&lt;br /&gt;
&lt;br /&gt;
In Unix systems this path is usually /usr/lib/php/PHP/PHP_CodeSniffer/Standards/Joomla but this varies from system to system. In Xubuntu 12.04, the path is /usr/share/php/PHP/CodeSniffer/Standards/Joomla.&lt;br /&gt;
Windows based system with XAMPP have the following path: PATH_TO_XAMMP\php\PEAR\PHP\CodeSniffer\Standards (for example: C:\xampp\php\PEAR\PHP\CodeSniffer\Standards)&lt;br /&gt;
&lt;br /&gt;
Use &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;pear config-get php_dir&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
to find out where the PEAR directory is on your system. Then add &amp;quot;/PHP/PHP_CodeSniffer/Standards&amp;quot; to it.&lt;br /&gt;
&lt;br /&gt;
==2. Clone Joomla Codestyle==&lt;br /&gt;
In order to have PHP Code Sniffer (phpcs) sniffing your Joomla projects for the right code style, you have to clone the Joomla Codestyle &#039;&#039;&#039;into the /CodeSniffer/Standards/&#039;&#039;&#039; folder of Code Sniffer. That folder already has other folders for styles like PSR1, PSR2, Squiz &amp;amp; Zend. &lt;br /&gt;
&lt;br /&gt;
The location of this folder depends on both your operating system as well as your LAMP/WAMP/MAMP/XAMP/AMP stack. Some popular locations are:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mac&#039;&#039;&#039;&lt;br /&gt;
 /Applications/MAMP/bin/php/php7.0.0/lib/php/PHP/CodeSniffer/Standards/&lt;br /&gt;
This is for PHP 7.0.0 but this can be another PHP version folder as well.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Linux&#039;&#039;&#039;&lt;br /&gt;
 ~/.composer/vendor/squizlabs/php_codesniffer/CodeSniffer/Standards/&lt;br /&gt;
&lt;br /&gt;
 ~/.config/composer/vendor/squizlabs/php_codesniffer/CodeSniffer/Standards&lt;br /&gt;
&#039;&#039;&#039;Windows&#039;&#039;&#039;&lt;br /&gt;
 c:\Users\Username\AppData\Roaming\Composer\vendor\squizlabs\php_codesniffer\CodeSniffer\Standards\&lt;br /&gt;
This is using Composer on Windows.&lt;br /&gt;
&lt;br /&gt;
If you can&#039;t find it in any of the above folders, note that the folder you are looking for ends with &#039;&#039;&#039;\CodeSniffer\Standards\&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
On Linux, go to the Standards folder of CodeSniffer and git clone from https://github.com/joomla/coding-standards:&lt;br /&gt;
 $ cd  ~/.composer/vendor/squizlabs/php_codesniffer/CodeSniffer/Standards/ &lt;br /&gt;
or (for example on OpenSuse)&lt;br /&gt;
 $ cd  ~/.config/composer/vendor/squizlabs/php_codesniffer/CodeSniffer/Standards/ &lt;br /&gt;
and then&lt;br /&gt;
 $ git clone https://github.com/joomla/coding-standards.git Joomla&lt;br /&gt;
&lt;br /&gt;
You&#039;ll end up with a folder like ~/.composer/vendor/squizlabs/php_codesniffer/CodeSniffer/Standards/Joomla/&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
You invoke the custom standard by&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;phpcs --standard=Joomla file/to/sniff&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To test a platform file using the provided platform coding standards, use&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;phpcs --standard=build/phpcs/Joomla path/to/file/or/folder&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Further documentation on the use of phpcs can be found at: [http://pear.php.net/package/PHP_CodeSniffer/docs]&lt;br /&gt;
&lt;br /&gt;
==3. IDE Integration==&lt;br /&gt;
Everybody loves the console. It is, with no doubt, the most effective way to do whatever you need to do. Sometimes even Linux gurus need a little bit of comfort.&lt;br /&gt;
&lt;br /&gt;
Fortunately there is a plug-in available for PhpStorm, Eclipse and Netbeans that integrates the CodeSniffer into your favourite IDE, so any coding standard violations are shown like &amp;quot;normal&amp;quot; errors.&lt;br /&gt;
&lt;br /&gt;
=== PhpStorm ===&lt;br /&gt;
Code Sniffer is supported out of the box in PhpStorm. Go to Settings and under Editor -&amp;gt; Inspections you will see the list of sniffers you have installed.&lt;br /&gt;
&lt;br /&gt;
==== Set Path to Code Sniffer ====&lt;br /&gt;
# Open Settings (CTRL-ALT-S / CMD-,)&lt;br /&gt;
# Go to Languages &amp;amp; Frameworks&lt;br /&gt;
# Click on PHP&lt;br /&gt;
# Click on Code Sniffer&lt;br /&gt;
# The configuration is set to Local by default&lt;br /&gt;
# Click on the 3 dots behind it to open the configuration screen&lt;br /&gt;
# The first option is the PHP Code Sniffer (phpcs) path&lt;br /&gt;
# Click on the 3 dots behind the path to select the location of the phpcs file. See above on where phpcs may be installed on your site&lt;br /&gt;
# Click on Validate to make sure the path is correct and phpcs is working&lt;br /&gt;
# Click OK&lt;br /&gt;
&lt;br /&gt;
===== Activating the Joomla Code Style =====&lt;br /&gt;
# Open Settings (CTRL-ALT-S / CMD-,)&lt;br /&gt;
# Go to Editor&lt;br /&gt;
# Click on Inspections&lt;br /&gt;
# In the list, go to PHP&lt;br /&gt;
# Click on PHP Code Sniffer Validation&lt;br /&gt;
# Click on the check box behind it to activate it&lt;br /&gt;
# Click the Reload button (2 arrows) to force a reload of rules from disk&lt;br /&gt;
# Joomla should now be available in the list. See following image:&lt;br /&gt;
 &amp;lt;gallery&amp;gt;&lt;br /&gt;
 File:PhpStorm8CodeSniffer.png|PHPStorm CodeSniffer&lt;br /&gt;
 &amp;lt;/gallery&amp;gt;&lt;br /&gt;
 &amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
9. Click OK&lt;br /&gt;
&lt;br /&gt;
==== PHP PSR-0, PSR-1 and PSR-2 ====&lt;br /&gt;
* https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md&lt;br /&gt;
* https://github.com/pmjones/fig-standards/blob/psr-1-style-guide/proposed/PSR-1-basic.md&lt;br /&gt;
* https://github.com/pmjones/fig-standards/blob/psr-1-style-guide/proposed/PSR-2-advanced.md&lt;br /&gt;
&lt;br /&gt;
===== Using PHP PSR-1 and PSR-2 Sniff =====&lt;br /&gt;
A CodeSniffer sniff to check against the PSR-x Coding Standard can be used as well. In that case you can select a different standard than Joomla.&lt;br /&gt;
&lt;br /&gt;
===== Using Joomla Code style =====&lt;br /&gt;
It&#039;s nice to be able to check that the standards are respected. It&#039;s even nicer if PhpStorm helps you format properly too as you are coding.&lt;br /&gt;
To use the Joomla code style in PhpStorm&lt;br /&gt;
# Open Settings (CTRL-ALT-S / CMD-,)&lt;br /&gt;
# Go to Editor&lt;br /&gt;
# Click on Code Style&lt;br /&gt;
# Select Joomla from the Scheme select box&lt;br /&gt;
&lt;br /&gt;
==== PhpStorm / Alternative Method ====&lt;br /&gt;
&#039;&#039;&#039;NOTE&#039;&#039;&#039;: This method is &#039;&#039;&#039;outdated&#039;&#039;&#039;, but it might be useful if you are looking for a different integration. It also demonstrates the use of external tools in PhpStorm - so it &#039;&#039;shouldn&#039;t be deleted&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The Code Sniffer can also be integrated easily as an external tool. PhpStorm will display the output in the console, including click-able links containing line and column numbers to the files that contain errors.&lt;br /&gt;
&lt;br /&gt;
* Click on &amp;quot;Settings&amp;quot; and search for &amp;quot;External tools&amp;quot;&lt;br /&gt;
* Click &amp;quot;Add...&amp;quot;&lt;br /&gt;
* Choose a &amp;quot;Name&amp;quot;, &amp;quot;Group&amp;quot; and &amp;quot;Description&amp;quot;.&lt;br /&gt;
* Click &amp;quot;Output Filters&amp;quot;&lt;br /&gt;
** Click &amp;quot;Add...&amp;quot;, Choose a name and enter under &amp;quot;Regular expression to match output&amp;quot; the value: &amp;lt;tt&amp;gt;$FILE_PATH$:$LINE$:$COLUMN$&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;quot;Program&amp;quot;: Search for the phpcs executable on your system. You have to set the path to the &#039;&#039;phpcs.bat&#039;&#039; from the installed PHP_CodeSniffer PEAR package&lt;br /&gt;
** For Unix based systems, the path is something like /usr/bin/phpcs&lt;br /&gt;
** In XAMPP (windows), you can find the file in the PHP root folder (e.g. C:\xampp\php\phpcs.bat)&lt;br /&gt;
* &amp;quot;Parameters&amp;quot;:&lt;br /&gt;
** &amp;lt;tt&amp;gt;--standard=&amp;lt;path/to/joomla-platform&amp;gt;/build/phpcs/Joomla&amp;lt;/tt&amp;gt; The path to the Joomla! coding standards.&lt;br /&gt;
** &amp;lt;tt&amp;gt;--report=emacs&amp;lt;/tt&amp;gt; The will generate a simple list containing links to the error files&lt;br /&gt;
** Optionally you may want to specify &amp;lt;tt&amp;gt;-p&amp;lt;/tt&amp;gt; for &amp;quot;progress&amp;quot; or &amp;lt;tt&amp;gt;-n&amp;lt;/tt&amp;gt; for &amp;quot;errors only&amp;quot;.&lt;br /&gt;
** The last parameter has to be &amp;lt;tt&amp;gt;$FilePath$&amp;lt;/tt&amp;gt; specifying the file or folder you want to sniff.&lt;br /&gt;
&lt;br /&gt;
A typical &amp;quot;Parameters&amp;quot; line on a Linux system might look like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;-np --standard=/home/elkuku/libs/joomla/build/phpcs/Joomla --report=emacs $FilePath$&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may now right click any file or folder and choose the sniffer from the context menu or add a new tool bar button with a nice Joomla! logo [[File:icon-16-joomla.png]].&lt;br /&gt;
&lt;br /&gt;
=== Netbeans ===&lt;br /&gt;
Netbeans has the sniffer functionality integrated into the core system.&lt;br /&gt;
&lt;br /&gt;
# Start your Netbeans IDE&lt;br /&gt;
# Open Tools =&amp;gt; Options =&amp;gt; PHP =&amp;gt; Code Analysis =&amp;gt; Code Sniffer&lt;br /&gt;
# You have to set the path to &#039;&#039;phpcs.bat&#039;&#039; from the installed PHP_CodeSniffer PEAR package&lt;br /&gt;
#* For Unix based systems the path is something like /usr/bin/phpcs&lt;br /&gt;
#* In XAMPP (windows) you can find the file in the PHP root folder (e.g. C:\xampp\php\phpcs.bat)&lt;br /&gt;
# As &amp;quot;Default Standard,&amp;quot; choose &amp;quot;Joomla&amp;quot; to use the Joomla! standard&lt;br /&gt;
# Now you can click &#039;&#039;OK&#039;&#039; to start sniffing&lt;br /&gt;
# Open from the top menu Source =&amp;gt; Inspect...&lt;br /&gt;
# Enjoy&lt;br /&gt;
&lt;br /&gt;
=== Eclipse ===&lt;br /&gt;
[[Image:eclipse_pti.png|left|thumb|200px|1) Eclipse PTI]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
Installation is a breeze and follows the usual pattern:&lt;br /&gt;
# &amp;lt;tt&amp;gt;Help =&amp;gt; Install New Software...&amp;lt;/tt&amp;gt;&lt;br /&gt;
# &amp;lt;tt&amp;gt;Work with:&amp;lt;/tt&amp;gt; Fill in one of the update site URLs found here: http://www.phpsrc.org/eclipse/pti/&lt;br /&gt;
# Select the desired tools&lt;br /&gt;
# Restart Eclipse.&lt;br /&gt;
&lt;br /&gt;
[[Image:eclipse_pti_settings.png|right|thumb|150px|2) Eclipse PTI settings]]&lt;br /&gt;
You are now able to sniff for code violations against common standards like PEAR or Zend etc.&lt;br /&gt;
&lt;br /&gt;
To sniff against your own standards, specify their location and activate them (see screen shot 2)&lt;br /&gt;
&lt;br /&gt;
# &amp;lt;tt&amp;gt;Window =&amp;gt; Preferences&amp;lt;/tt&amp;gt;&lt;br /&gt;
# &amp;lt;tt&amp;gt;PHP Tools =&amp;gt; PHP CodeSniffer&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Happy sniffing.&lt;br /&gt;
&lt;br /&gt;
==== PHP Tools Compatibility Issue ====&lt;br /&gt;
PHP Tools does not directly support PHP_CodeSniffer-1.5.x. It reports this error:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;PHP Fatal error: Uncaught exception &#039;PHP_CodeSniffer_Exception&#039; with message &#039;Class PHP_CodeSniffer_CommentParser_ClassCommentParser not found&#039; in /usr/share/php5/PEAR/PHP/CodeSniffer/Standards/Joomla/Sniffs/Commenting/FileCommentSniff.php:18&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It comes with a pre-packaged CodeSniffer version located in eclipse/plugins/org.phpsrc.eclipse.pti.library.pear_.../php/library/PEAR/PHP. To fix the issue, just remove the pre-packaged CodeSniffer version and link the local version. For example, /usr/share/php/PHP.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;ln -s /usr/share/php/PHP /home/.../eclipse/plugins/org.phpsrc.eclipse.pti.library.pear_.../php/library/PEAR/PHP&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In any case, you can also debug a PHP Tools issue, enabling the debug mode to show the internal commands in Eclipse console:&lt;br /&gt;
&lt;br /&gt;
# &amp;lt;tt&amp;gt;Window =&amp;gt; Preferences&amp;lt;/tt&amp;gt;&lt;br /&gt;
# &amp;lt;tt&amp;gt;PHP Tools =&amp;gt; PHP CodeSniffer&amp;lt;/tt&amp;gt;&lt;br /&gt;
# &amp;lt;tt&amp;gt;Debug: print PHP output to console&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Command example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;/usr/bin/php -c /tmp/zend_debug/session8314597725413224814.tmp -d asp_tags=off -d short_open_tag=on /home/.../eclipse/plugins/org.phpsrc.eclipse.pti.tools.codesniffer_1.3.0.R20111119000000/php/tools/phpcs.php --report=xml --standard=/home/.../Joomla /home/..../myphpfile.php&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Geany ===&lt;br /&gt;
* Open a PHP file. (Otherwise the build menu is not accessible.) See this [http://static.xscreenshot.com/2016/07/13/08/screen_6bc0692cf995702a1e379b39643d0c2d Screenshot]&lt;br /&gt;
* On the top menu, select Build-&amp;gt;Set Build Commands.&lt;br /&gt;
* Select the second field and name it as you wish. Enter this code in the Command: &amp;lt;code&amp;gt;phpcs --standard=Joomla &amp;quot;%f&amp;quot; | sed -e &#039;s/^/%f |/&#039; | egrep &#039;WARNING|ERROR&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
* Enter this code in the Error Regular Expression field: &amp;lt;code&amp;gt;(.+) [|]\s+([0-9]+)&amp;lt;/code&amp;gt; See this  [http://view.xscreenshot.com/ef00820cf7c017ce659c8e9f0b02d3ae Screenshot]&lt;br /&gt;
* Select OK.&lt;br /&gt;
* If the Message Window is not open, display it by selecting it in the top View menu.&lt;br /&gt;
* When viewing any PHP file, press F9 to see the errors found. [http://view.xscreenshot.com/8704b9fd1bda3f841364a0ffa28a54ae Screenshot]&lt;br /&gt;
&lt;br /&gt;
=== References ===&lt;br /&gt;
* http://www.phpsrc.org/ PTI - PHP tools integration for Eclipse&lt;br /&gt;
* http://sourceforge.net/projects/phpmdnb/ Netbeans plugin&lt;br /&gt;
* http://hakre.wordpress.com/2010/03/06/php-code-sniffer-eclipse-and-wordpress/ - Excellent article. Just change &amp;quot;Wordpress&amp;quot; for &amp;quot;Joomla!&amp;quot; ;)&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]][[Category:Bug Squad]]&lt;br /&gt;
[[Category:IDE (Integrated development environment)]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=JHelp:Cheatsheet&amp;diff=372235</id>
		<title>JHelp:Cheatsheet</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=JHelp:Cheatsheet&amp;diff=372235"/>
		<updated>2017-03-16T18:06:24Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Added display text as code (tt) -- 2017-03-16 -yh&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;!--COMMENT MARKUP. Displays:Edit mode only.--&amp;gt;&lt;br /&gt;
{|align=&amp;quot;center&amp;quot; style=&amp;quot;width:100%; border:2px #a3b1bf solid; background:#f5faff; text-align:left;&amp;quot;&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; align=&amp;quot;center&amp;quot; style=&amp;quot;background:#5091cd; text-align:center;&amp;quot; | {{shortcut|JDOC:CHEAT|JDOC:EDIT}}&lt;br /&gt;
{{section portal heading|icon=magic|title=Joomla Documentation Wiki Cheatsheet}}&lt;br /&gt;
|-&amp;lt;!--WORKS ONLY AT THE BEGINNING OF LINES--&amp;gt;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; style=&amp;quot;background:#c5d6e8; border-top:2px #a3b1bf solid; font-size:1.4em&amp;quot; |&lt;br /&gt;
&amp;lt;center&amp;gt;&#039;&#039;&#039;Works only at the beginning of lines&#039;&#039;&#039; &amp;amp;nbsp; &amp;amp;nbsp;&lt;br /&gt;
|-&amp;lt;!--COLUMN HEADINGS--&amp;gt; style=&amp;quot;background:#c5d6e8; padding:0.3em; font-size: 0.9em; text-align:center;&amp;quot;&lt;br /&gt;
| style=&amp;quot;border-bottom:2px #a3b1bf solid&amp;quot; width=&amp;quot;30%&amp;quot; | Description&lt;br /&gt;
| style=&amp;quot;border-bottom:2px #a3b1bf solid&amp;quot; | You type&lt;br /&gt;
| style=&amp;quot;border-bottom:2px #a3b1bf solid&amp;quot; width=&amp;quot;30%&amp;quot; | You get&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Section headings&#039;&#039;&#039;{{Anchor|Section headings}}&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.7em .5em; font-size:0.9em;&amp;quot;&amp;gt;These are equivalent to using &amp;lt;nowiki&amp;gt;&amp;lt;h2&amp;gt;, &amp;lt;h3&amp;gt;, &amp;lt;h4&amp;gt;, etc.. header tags&amp;lt;/nowiki&amp;gt;&amp;lt;br/&amp;gt;&amp;lt;/nowiki&amp;gt;&#039;&#039;a Table of Contents will automatically be generated when four headings are added to an article&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;==Level 2==&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;===Level 3===&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;====Level 4====&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;=====Level 5=====&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;======Level 6======&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:0.9em&amp;quot;&amp;gt;&#039;&#039;do not use&#039;&#039;&amp;amp;nbsp; =Level 1=&amp;amp;nbsp; &#039;&#039;as it is for page titles&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==Level 2==&lt;br /&gt;
===Level 3===&lt;br /&gt;
====Level 4====&lt;br /&gt;
=====Level 5=====&lt;br /&gt;
======Level 6======&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Nonindexed headers&#039;&#039;&#039;&amp;lt;div style=&amp;quot;font-size:0.9em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.7em .5em; font-size:0.9em;&amp;quot;&amp;gt;&#039;&#039;left out of Table of Contents&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;; Header name&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.9em;&amp;quot;&amp;gt;&#039;&#039;has a leading semicolon&#039;&#039; &amp;quot;;&amp;quot; &#039;&#039;in front&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
&#039;&#039;&#039;Header name&#039;&#039;&#039;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.7em .5em; font-size:0.9em;&amp;quot;&amp;gt;&#039;&#039;will not appear in Table of Contents&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Bulleted list&#039;&#039;&#039;&amp;lt;br/&amp;gt;Use the asterisk(*){{Anchor|Bulleted list}}&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;* One&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;* Two&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;** Two point one&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;* Three&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
* One&lt;br /&gt;
* Two&lt;br /&gt;
** Two point one&lt;br /&gt;
* Three&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Numbered list&#039;&#039;&#039;&amp;lt;br/&amp;gt;Use the hash tag(number sign-(#)){{Anchor|Numbered list}}&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;# One&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;# Two&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;## Two point one&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;# Three&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
# One&lt;br /&gt;
# Two&lt;br /&gt;
## Two point one&lt;br /&gt;
# Three&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Indenting text&#039;&#039;&#039;{{Anchor|Indenting text}}&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.7em .5em; font-size:0.9em;&amp;quot;&amp;gt;&#039;&#039;this is used when replying on a [[JDOC:Tutorial (Talk pages)|talk page]], to make it easier to follow conversations&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;no indent (normal)&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;:first indent&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;::second indent&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;:::third indent&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
no indent (normal)&amp;lt;br /&amp;gt;&lt;br /&gt;
:first indent&lt;br /&gt;
::second indent&lt;br /&gt;
:::third indent&lt;br /&gt;
|-&amp;lt;!--WORKS ANYWHERE IN THE TEXT--&amp;gt;&lt;br /&gt;
| colspan=3 style=&amp;quot;background:#c5d6e8; border-top:2px #a3b1bf solid; font-size:1.4em&amp;quot; |&lt;br /&gt;
&amp;lt;center&amp;gt;&#039;&#039;&#039;Works anywhere in the text&#039;&#039;&#039; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp;&lt;br /&gt;
|-&amp;lt;!--COLUMN HEADINGS--&amp;gt; style=&amp;quot;background:#c5d6e8; padding:0.3em; font-size: 0.9em; text-align:center;&amp;quot;&lt;br /&gt;
| style=&amp;quot;border-bottom:2px #a3b1bf solid&amp;quot; width=&amp;quot;30%&amp;quot; | Description&lt;br /&gt;
| style=&amp;quot;border-bottom:2px #a3b1bf solid&amp;quot; | You type&lt;br /&gt;
| style=&amp;quot;border-bottom:2px #a3b1bf solid&amp;quot; width=&amp;quot;30%&amp;quot; | You get&lt;br /&gt;
|-&amp;lt;!--1ST ROW 1ST COLUMN--&amp;gt;&lt;br /&gt;
|Italics{{Anchor|Italic text}}, bold{{Anchor|Bold text}}, and both{{Anchor|bold and italic}}&lt;br /&gt;
|&amp;lt;!--2ND COLUMN--&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;&#039;&#039;italics&#039;&#039;, &#039;&#039;&#039;bold&#039;&#039;&#039;, and &#039;&#039;&#039;&#039;&#039;both&#039;&#039;&#039;&#039;&#039;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;!--3RD COLUMN--&amp;gt;&lt;br /&gt;
&#039;&#039;italics&#039;&#039;, &#039;&#039;&#039;bold&#039;&#039;&#039;, and &#039;&#039;&#039;&#039;&#039;both&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
|-&amp;lt;!--HORIZONTAL LINE--&amp;gt;&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&amp;lt;!--2ND ROW 1ST COLUMN--&amp;gt;&lt;br /&gt;
|&#039;&#039;&#039;Link&#039;&#039;&#039;{{Anchor|Internal link}} to another page&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;[[glossary]]&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;[[glossary]] terms&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
[[glossary]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[glossary]] terms&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;quot;&#039;&#039;&#039;Pipe&#039;&#039;&#039;&amp;quot; a link to change the link&#039;s text&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;[[Administrators|Joomla! Administrator]]&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
[[Administrators|Joomla! Administrator]]&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&#039;&#039;&#039;Link to a section&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;[[Glossary#Component]]&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;[[Glossary#Component|Joomla! Component]]&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
[[Glossary#Component]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Glossary#Component|Joomla! Component]]&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;[[WP:RED|Red link]]&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.7em .5em; font-size:0.9em;&amp;quot;&amp;gt;&#039;&#039;red links in articles help by showing desired [[WP:REDIRECT|redirects]] or &#039;&#039;&#039;Needed&#039;&#039;&#039; pages&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;[[something missing]]&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
[[something missing]]&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;References and footnotes&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.7em .5em; font-size:0.9em;&amp;quot;&amp;gt;&#039;&#039;sources in the article will appear where &amp;lt;nowiki&amp;gt;{{reflist}}&amp;lt;/nowiki&amp;gt; is put, typically under a level 2 section heading (see below) towards the bottom of the page.&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.7em .5em; font-size:0.9em;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;Hello,&amp;lt;ref&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;Library of Congress&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;/ref&amp;gt; World.&amp;lt;ref&amp;gt;http://www.w3.org/&amp;lt;/ref&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
References:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references/&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
Hello,&amp;lt;ref&amp;gt;Library of Congress&amp;lt;/ref&amp;gt; World.&amp;lt;ref&amp;gt;http://www.w3.org/&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
References:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Signature&#039;&#039;&#039;{{Anchor|Signature}}&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.7em .5em; font-size:0.9em;&amp;quot;&amp;gt;&#039;&#039;sign your contributions when posting to a [[JDOC:Tutorial (Talk pages)|talk page]]&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;~~~~&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;span style=&amp;quot;font-size:0.9em;&amp;quot;&amp;gt;&#039;&#039;do not sign in an article, only on talk pages&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
[[Special:Mypage|Username]] ([[Special:Mytalk|talk]]) {{CURRENTTIME}}, {{CURRENTDAY}} {{CURRENTMONTHNAME}} {{CURRENTYEAR}} (UTC)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Display as Code&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;tt&amp;gt;JFactory::getApplication()&amp;lt;/tt&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;JFactory::getApplication()&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Plain website link&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;http://docs.joomla.org&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
http://docs.joomla.org&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Link a website&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;[http://docs.joomla.org]&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
[http://docs.joomla.org]&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Link and name a website&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;[http://docs.joomla.org Joomla Documentation Wiki]&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
[http://docs.joomla.org Joomla Documentation Wiki]&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;Strike&#039;&#039;&#039; your talk page comment or a list&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.7em .5em; font-size:0.9em;&amp;quot;&amp;gt;&#039;&#039;to show your previous comment is outdated&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;s&amp;gt;This topic isn&#039;t notable.&amp;lt;/s&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;s&amp;gt;This topic isn&#039;t notable.&amp;lt;/s&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;[[JDOC:Picture tutorial|Show an image]]&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.7em .5em; font-size:0.9em;&amp;quot;&amp;gt;&#039;&#039;for uploading, see the [[Help:Uploading a File|intro to uploading images]]&lt;br /&gt;
&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Anchor|Thumbnail image}}&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;[[&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;File:Documentation_all_together_transparent.png&amp;lt;tt&amp;gt;|thumb|&amp;lt;/tt&amp;gt;Caption&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;]]&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
[[File:Documentation_all_together_transparent.png|thumb|Caption]]&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;[[JDOC:Picture tutorial|Float an image]]&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.7em .5em; font-size:0.9em;&amp;quot;&amp;gt;&#039;&#039;for uploading, see the [[Help:Uploading Files#Images|intro to uploading images]]&lt;br /&gt;
&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Anchor|Thumbnail image}}&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;nowiki&amp;gt;[[&amp;lt;/nowiki&amp;gt;File:Documentation_all_together_transparent.png|left&amp;lt;nowiki&amp;gt;]]&amp;lt;/nowiki&amp;gt;&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&amp;lt;nowiki&amp;gt;[[&amp;lt;/nowiki&amp;gt;File:Documentation_all_together_transparent.png|right&amp;lt;nowiki&amp;gt;]]&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
[[File:Documentation_all_together_transparent.png|75px|left]]{{-}}&lt;br /&gt;
[[File:Documentation_all_together_transparent.png|75px|right]]{{-}}&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot; style=&amp;quot;border-top:1px solid #cee0f2;&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|Add a page to a &#039;&#039;&#039;category&#039;&#039;&#039;{{Anchor|Add a page to a category}}&lt;br /&gt;
|&amp;lt;tt&amp;gt;&amp;lt;nowiki&amp;gt;[[Category:Category name]]&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;span style=&amp;quot;font-size:0.9em;&amp;quot;&amp;gt;&#039;&#039;place near the bottom of a page&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
|&amp;lt;span style=&amp;quot;font-size:0.9em;&amp;quot;&amp;gt;&#039;&#039;shows&#039;&#039;&amp;lt;/span&amp;gt; &amp;quot;Category name&amp;quot; &amp;lt;span style=&amp;quot;font-size:0.9em;&amp;quot;&amp;gt;&#039;&#039;in a bar at bottom when the page is previewed or saved&#039;&#039;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
__NOTOC__ __NOEDITSECTION__&lt;br /&gt;
[[Category:Documentation Wiki Information|Documentation Wiki Information]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=User:Yvesh&amp;diff=372228</id>
		<title>User:Yvesh</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=User:Yvesh&amp;diff=372228"/>
		<updated>2017-03-16T17:46:08Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Create profile&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{top portal heading|icon=users|size=2x|title=Yves Hoppe - yvesh}}&lt;br /&gt;
&lt;br /&gt;
* yves.hoppe@community.joomla.org&lt;br /&gt;
* yves@compojoom.com&lt;br /&gt;
&lt;br /&gt;
{{section portal heading|icon=users|title=Social media profiles}}&lt;br /&gt;
* &#039;&#039;&#039;Twitter:&#039;&#039;&#039; [https://twitter.com/yveshoppe @yveshoppe]&lt;br /&gt;
* &#039;&#039;&#039;Facebook:&#039;&#039;&#039; [https://www.facebook.com/yves.hoppe yves.hoppe]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=J3.x:Discover_on_which_client_your_extension_code_is_running&amp;diff=372008</id>
		<title>J3.x:Discover on which client your extension code is running</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=J3.x:Discover_on_which_client_your_extension_code_is_running&amp;diff=372008"/>
		<updated>2017-03-16T11:57:37Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Joomla version|version=3.7|time=and after|comment=&amp;lt;translate&amp;gt;&amp;lt;!--T:47--&amp;gt;&lt;br /&gt;
version&amp;lt;/translate&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
This article gives an overview of the &amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isClient()&amp;lt;/code&amp;gt; method introduced in Joomla 3.7&lt;br /&gt;
&lt;br /&gt;
It replaces the &amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isSite()&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isAdmin()&amp;lt;/code&amp;gt; methods.&lt;br /&gt;
&lt;br /&gt;
=== Frontend ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isClient(&#039;site&#039;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns true if executed in the Joomla web frontend.&lt;br /&gt;
&lt;br /&gt;
=== Administrator / Backend ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isClient(&#039;administrator&#039;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns true if executed in the Joomla web backend / Administrator area&lt;br /&gt;
&lt;br /&gt;
=== Administrator / Backed ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isClient(&#039;installation&#039;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns true if executed in the Joomla installation&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Extension development]]&lt;br /&gt;
[[Category:Component Development]]&lt;br /&gt;
[[Category:JFactory]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=J3.x:Discover_on_which_client_your_extension_code_is_running&amp;diff=372007</id>
		<title>J3.x:Discover on which client your extension code is running</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=J3.x:Discover_on_which_client_your_extension_code_is_running&amp;diff=372007"/>
		<updated>2017-03-16T11:53:43Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Joomla version|version=3.7|time=and after|comment=&amp;lt;translate&amp;gt;&amp;lt;!--T:47--&amp;gt;&lt;br /&gt;
version&amp;lt;/translate&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
This article gives an overview of the &amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isClient()&amp;lt;/code&amp;gt; method introduced in Joomla 3.7&lt;br /&gt;
&lt;br /&gt;
It replaces the &amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isSite()&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isAdmin()&amp;lt;/code&amp;gt; methods.&lt;br /&gt;
&lt;br /&gt;
=== Frontend ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isClient(&#039;site&#039;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns true if executed in the Joomla web frontend.&lt;br /&gt;
&lt;br /&gt;
=== Administrator / Backend ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isClient(&#039;administrator&#039;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns true if executed in the Joomla web backend / Administrator area&lt;br /&gt;
&lt;br /&gt;
=== Administrator / Backed ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isClient(&#039;installation&#039;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns true if executed in the Joomla installation&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Extension development]]&lt;br /&gt;
[[Category:Component Development]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=J3.x:Discover_on_which_client_your_extension_code_is_running&amp;diff=372006</id>
		<title>J3.x:Discover on which client your extension code is running</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=J3.x:Discover_on_which_client_your_extension_code_is_running&amp;diff=372006"/>
		<updated>2017-03-16T11:49:44Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Joomla version|version=3.7|time=and after|comment=&amp;lt;translate&amp;gt;&amp;lt;!--T:47--&amp;gt;&lt;br /&gt;
version&amp;lt;/translate&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
This article gives an overview of the &amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isClient()&amp;lt;/code&amp;gt; method introduced in Joomla 3.7&lt;br /&gt;
&lt;br /&gt;
It replaces the &amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isSite()&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isAdmin()&amp;lt;/code&amp;gt; methods.&lt;br /&gt;
&lt;br /&gt;
=== Frontend ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isClient(&#039;site&#039;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns true if executed in the Joomla web frontend.&lt;br /&gt;
&lt;br /&gt;
=== Administrator / Backend ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isClient(&#039;administrator&#039;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns true if executed in the Joomla web backend / Administrator area&lt;br /&gt;
&lt;br /&gt;
=== Administrator / Backed ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isClient(&#039;installation&#039;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns true if executed in the Joomla installation&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Extension development]]&lt;br /&gt;
[[Category:Component Development]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=J3.x:Discover_on_which_client_your_extension_code_is_running&amp;diff=372005</id>
		<title>J3.x:Discover on which client your extension code is running</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=J3.x:Discover_on_which_client_your_extension_code_is_running&amp;diff=372005"/>
		<updated>2017-03-16T11:48:43Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Initial creation -- 2017-03-16 YH&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Joomla version|version=3.7|time=and after|comment=&amp;lt;translate&amp;gt;&amp;lt;!--T:47--&amp;gt;&lt;br /&gt;
version&amp;lt;/translate&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
This article gives an overview of the &amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isClient()&amp;lt;/code&amp;gt; method introduced in Joomla 3.7&lt;br /&gt;
&lt;br /&gt;
It replaces the &amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isSite()&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isAdmin()&amp;lt;/code&amp;gt; methods.&lt;br /&gt;
&lt;br /&gt;
=== Frontend ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isClient(&#039;site&#039;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns true if executed in the Joomla web frontend.&lt;br /&gt;
&lt;br /&gt;
=== Administrator / Backend ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isClient(&#039;administrator&#039;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns true if executed in the Joomla web backend / Administrator area&lt;br /&gt;
&lt;br /&gt;
=== Administrator / Backed ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;JFactory::getApplication()-&amp;gt;isClient(&#039;installation&#039;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns true if executed in the Joomla installation&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Extension development]]&lt;br /&gt;
[[Category:Template Development]]&lt;br /&gt;
[[Category:Component Development]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=Using_the_JFactory_class&amp;diff=371526</id>
		<title>Using the JFactory class</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=Using_the_JFactory_class&amp;diff=371526"/>
		<updated>2017-03-15T00:06:22Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Creation of JFactory class usage Boilerplate WIP -- 2017-03-15&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{version/tutor|3.x}}&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
JFactory is the Joomla Platform class, giving you access to the most important (mostly singletons) parts in Joomla. It contains multiple other objects, like the application one or the Joomla! global configuration.&lt;br /&gt;
&lt;br /&gt;
== JFactory::getApplication() ==&lt;br /&gt;
&lt;br /&gt;
Returns the JApplicationCMS, through it you can access for the example do redirects, access the configuration and the input variables, the Menu or enqueue messages which are shown to the user.&lt;br /&gt;
&lt;br /&gt;
See [[Using the JApplication class]] for more details.&lt;br /&gt;
&lt;br /&gt;
== JFactory::getDocument() ==&lt;br /&gt;
&lt;br /&gt;
Provides access to the current JDocument, with it you can set Meta data, add styles and scripts and more related to the document.&lt;br /&gt;
&lt;br /&gt;
See [[Adding JavaScript and CSS to the page]]&lt;br /&gt;
&lt;br /&gt;
== JFactory::getDbo() ==&lt;br /&gt;
&lt;br /&gt;
Returns a database object, with it you query to the database ($query = JFactory::getDbo()-&amp;gt;getQuery(true)), secure your input before sending it and load entries.&lt;br /&gt;
&lt;br /&gt;
See also [[Selecting data using JDatabase]]&lt;br /&gt;
&lt;br /&gt;
== JFactory::getUser() ==&lt;br /&gt;
&lt;br /&gt;
Returns the current Joomla! user object (JUser), with it you can access information and methods related to users. It is also created for guests, where the id is zero.&lt;br /&gt;
&lt;br /&gt;
See [[Accessing the current user object]] &lt;br /&gt;
&lt;br /&gt;
== JFactory::getDate() ==&lt;br /&gt;
&lt;br /&gt;
Returns a [[How to use JDate]] instance, you can also add a time and a timezone offset to it. Without parameters it uses the current time.&lt;br /&gt;
&lt;br /&gt;
== JFactory::getMailer() ==&lt;br /&gt;
&lt;br /&gt;
Provides access to the Joomla Mailer (wrapper around PHPMailer) for sending emails with Joomla.&lt;br /&gt;
&lt;br /&gt;
See also [[Sending email from extensions]]&lt;br /&gt;
&lt;br /&gt;
== JFactory::getConfig() ==&lt;br /&gt;
&lt;br /&gt;
Returns a registry with the Joomla! configuration file (configuration.php), see [[JConfig]] for more details. To access single values you can use JFactory::getApplication()-&amp;gt;get(&#039;configValue&#039;)&lt;br /&gt;
&lt;br /&gt;
See also [[Getting global configuration parameters]]&lt;br /&gt;
&lt;br /&gt;
== JFactory::getSession() ==&lt;br /&gt;
&lt;br /&gt;
Returns the current visitors session. (Make sure Joomla is called as Webapplication)&lt;br /&gt;
&lt;br /&gt;
== External Links ==&lt;br /&gt;
&lt;br /&gt;
[https://api.joomla.org/cms-3/classes/JFactory.html API Docs for JFactory]&lt;br /&gt;
&lt;br /&gt;
[[Category:JFactory]] &lt;br /&gt;
[[Category:Tutorials]][[Category:Framework]]&lt;br /&gt;
[[Category:Module Development]]&lt;br /&gt;
[[Category:Plugin Development]][[Category:Component Development]]&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
	<entry>
		<id>https://docs.sandbox.joomla.org/index.php?title=How_to_use_the_filesystem_package&amp;diff=371031</id>
		<title>How to use the filesystem package</title>
		<link rel="alternate" type="text/html" href="https://docs.sandbox.joomla.org/index.php?title=How_to_use_the_filesystem_package&amp;diff=371031"/>
		<updated>2017-03-12T11:42:06Z</updated>

		<summary type="html">&lt;p&gt;Yvesh: Cleanup, J3.x and trying to remove the most worse codestyle and security issues.. WIP -- 2017-03-12&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{version|1.5,2.5,3.x}}&lt;br /&gt;
=Using the JFILE:: class=&lt;br /&gt;
&lt;br /&gt;
There are 4 classes in the filesystem library.&lt;br /&gt;
&lt;br /&gt;
* JFile:: (file.php)&lt;br /&gt;
* JFolder:: (folder.php)&lt;br /&gt;
* JPath:: (path.php)&lt;br /&gt;
* JArchive:: (archive.php)&lt;br /&gt;
&lt;br /&gt;
This tutorial focuses on the JFile:: class.&lt;br /&gt;
&lt;br /&gt;
The base for filehandling is the JFile class, found in libraries/joomla/filesystem/file.php&lt;br /&gt;
Below you can see the most common options from this library file. At the end of this post you can find a very simple script for file upload.&lt;br /&gt;
&lt;br /&gt;
==Get file extension==&lt;br /&gt;
Syntax:&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
$ext =  JFile::getExt($filename);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pretty clear, just feed the function with a filename and it will return the extension of the file you selected.&lt;br /&gt;
&lt;br /&gt;
==Strip file extension==&lt;br /&gt;
Syntax:&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
$name = JFile::stripExt($filename);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
This will return the filename without the extension.&lt;br /&gt;
&lt;br /&gt;
==Clean filename==&lt;br /&gt;
Syntax:&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
$safefilename = JFile::makeSafe($filename);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
It cleans out all odd characters from a filename and returns a safe filename.&lt;br /&gt;
&lt;br /&gt;
==Copy a file==&lt;br /&gt;
Syntax:&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
JFile::copy($src, $dest);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
It is basically a wrapper for the PHP copy() function, but also checks if the file you want to copy exists and the destination really is available. Great thing is that this function also makes use of the FTP-layer in J15 if necessary.&lt;br /&gt;
&lt;br /&gt;
==Delete a file==&lt;br /&gt;
Syntax:&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
JFile::delete($path.$file);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
It tries to delete the file, making sure it is actually existing, but also checks permissions. If permissions are not set up properly, it tries to change them and delete the file. It also uses the FTP-layer when necessary.&lt;br /&gt;
&lt;br /&gt;
==Upload a file==&lt;br /&gt;
Syntax:&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
JFile::upload($src, $dest);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
It is basically the wrapper for the PHP move_uploaded_file() function, but also does checks availability and permissions on both source and destination path.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
So how does that look in a script? I put up a small code snippet of an upload script. Some of the functions are used.&lt;br /&gt;
The script is fired from an upload form. That form has a file element, called file_upload (see below).&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
&amp;lt;form name=&amp;quot;upload&amp;quot; method=&amp;quot;post&amp;quot; enctype=&amp;quot;multipart/form-data&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;input type=&amp;quot;file&amp;quot; name=&amp;quot;file_upload&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;input type=&amp;quot;submit&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/form&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note:&lt;br /&gt;
If you didn´t add the part: enctype=&amp;quot;multipart/form-data&amp;quot; then you are unable to upload a file!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Upload code looks like this:&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
/*&lt;br /&gt;
* File upload example&lt;br /&gt;
*/&lt;br /&gt;
//Retrieve file details from uploaded file, sent from upload form&lt;br /&gt;
$file = JFactory::getApplication()-&amp;gt;input-&amp;gt;get(&#039;file_upload&#039;);&lt;br /&gt;
&lt;br /&gt;
//Import filesystem libraries. Perhaps not necessary, but does not hurt&lt;br /&gt;
jimport(&#039;joomla.filesystem.file&#039;);&lt;br /&gt;
&lt;br /&gt;
//Clean up filename to get rid of strange characters like spaces etc&lt;br /&gt;
$filename = JFile::makeSafe($file[&#039;name&#039;]);&lt;br /&gt;
&lt;br /&gt;
//Set up the source and destination of the file&lt;br /&gt;
$src = $file[&#039;tmp_name&#039;];&lt;br /&gt;
$dest = JPATH_COMPONENT . DS . &amp;quot;uploads&amp;quot; . DS . $filename;&lt;br /&gt;
&lt;br /&gt;
//First check if the file has the right extension, we need jpg only&lt;br /&gt;
if (strtolower(JFile::getExt($filename)) == &#039;jpg&#039;) &lt;br /&gt;
{&lt;br /&gt;
   // TODO: Add security checks&lt;br /&gt;
&lt;br /&gt;
   if (JFile::upload($src, $dest))&lt;br /&gt;
   {&lt;br /&gt;
      //Redirect to a page of your choice&lt;br /&gt;
   } &lt;br /&gt;
   else&lt;br /&gt;
   {&lt;br /&gt;
      //Redirect and throw an error message&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
   //Redirect and notify user file is not right extension&lt;br /&gt;
}&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Using the JFolder:: class=&lt;br /&gt;
The base for folder handling is the JFolder class, found in libraries/joomla/filesystem/folder.php&lt;br /&gt;
Below I will discuss the most common options from this library file. At the end of this post, I put it together in a very simple script as an exmaple&lt;br /&gt;
&lt;br /&gt;
==Copy folder==&lt;br /&gt;
Syntax:&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
JFolder::copy($src, $dest, $path, $force);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
This will copy a complete folder and all of it’s contents to another location on the server. It does permission and availability checking on both source and destination. By using $path you can enter a basepath to prefix to the filename and by setting the $force parameter to true, you can force the overwriting of already existing files. If set in the configuration, the FTP-layer will be used.&lt;br /&gt;
&lt;br /&gt;
==Create folder==&lt;br /&gt;
Syntax:&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
JFolder::create($path, $mode);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
This is basically a wrapper for the php mkdir() function, but with error permissions and availability checking. This one also uses the FTP-layer when set in the configuration. $mode will set the default permission, once copied and defaults to 0755.&lt;br /&gt;
&lt;br /&gt;
==Move folder==&lt;br /&gt;
Syntax:&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
JFolder::move($src, $dest);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Basically a wrapper for the php rename() function, but with permissions and availability checking. This one also uses the FTP-layer when set in the configuration.&lt;br /&gt;
&lt;br /&gt;
==Check if folder exists==&lt;br /&gt;
Syntax:&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
JFolder::exists($path);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Wrapper for the php is_dir() function. Pretty straightforward, returns true if folder exists.&lt;br /&gt;
&lt;br /&gt;
==Read files from folder==&lt;br /&gt;
Syntax:&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
JFolder::files($path, $filter = &#039;.&#039;, $recurse, $fullpath , $exclude);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Function to read files from a folder. When setting $recurse to true, also subfolders will be searched. $fullpath set to true returns the full path in the array. With $exclude, you can offer an array of extensions, not to include in the search for files. It returns an array with all filenames.&lt;br /&gt;
&lt;br /&gt;
==Read folders from filesystem==&lt;br /&gt;
Syntax:&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
JFolder::folders($path, $filter = &#039;.&#039;, $recurse, $fullpath , $exclude);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Exactly the same as JFolder::files(), except this does only return an array with foldernames.&lt;br /&gt;
&lt;br /&gt;
==Make a tree like list from a folder structure==&lt;br /&gt;
Syntax:&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
JFolder::listFolderTree($path, $filter, $maxLevel = 3, $level = 0, $parent = 0);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
It will read a folder, specified in $path and will return all folders in an array, suitable for tree display. You can specify the number of levels. The folder array looks like this:&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
Array&lt;br /&gt;
(&lt;br /&gt;
    [0] =&amp;gt; Array&lt;br /&gt;
        (&lt;br /&gt;
            [id] =&amp;gt; 1&lt;br /&gt;
            [parent] =&amp;gt; 0&lt;br /&gt;
            [name] =&amp;gt; administrator&lt;br /&gt;
            [fullname] =&amp;gt; g:/joomla_1012/administrator&lt;br /&gt;
            [relname] =&amp;gt; g:/joomla_1012/administrator&lt;br /&gt;
        )&lt;br /&gt;
&lt;br /&gt;
    [1] =&amp;gt; Array&lt;br /&gt;
        (&lt;br /&gt;
            [id] =&amp;gt; 2&lt;br /&gt;
            [parent] =&amp;gt; 1&lt;br /&gt;
            [name] =&amp;gt; backups&lt;br /&gt;
            [fullname] =&amp;gt; g:/joomla_1012/administrator/backups&lt;br /&gt;
            [relname] =&amp;gt; g:/joomla_1012/administrator/backups&lt;br /&gt;
        )&lt;br /&gt;
&lt;br /&gt;
    [2] =&amp;gt; Array&lt;br /&gt;
        (&lt;br /&gt;
            [id] =&amp;gt; 3&lt;br /&gt;
            [parent] =&amp;gt; 1&lt;br /&gt;
            [name] =&amp;gt; components&lt;br /&gt;
            [fullname] =&amp;gt; g:/joomla_1012/administrator/components&lt;br /&gt;
            [relname] =&amp;gt; g:/joomla_1012/administrator/components&lt;br /&gt;
        )&lt;br /&gt;
)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Clean a path string==&lt;br /&gt;
Syntax:&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
JFolder::makeSafe($path);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Identically to the JFile::makeSafe() function. It cleans all odd characters out of the string and returns a clean path.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
Ok, and how does this look in actual code. We are going to read the contents of a folder called images. In it, al large number of files are placed. We want to create a subfolder, called jpg and filter all jpg files out and move them to the jpg subfolder. After that, we will move the complete subfolder to another place on the server.&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
// First we set up parameters&lt;br /&gt;
$searchpath = JPATH_COMPONENT . &#039;/images&#039;;&lt;br /&gt;
&lt;br /&gt;
// Import the folder system library&lt;br /&gt;
jimport(&#039;joomla.filesystem.folder&#039;);&lt;br /&gt;
&lt;br /&gt;
// Then we create the subfolder called jpg&lt;br /&gt;
if (!JFolder::create($searchpath . &amp;quot;/jpg&amp;quot;))&lt;br /&gt;
{&lt;br /&gt;
   // Throw error message and stop script&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// Now we read all jpg files and put them in an array.&lt;br /&gt;
$jpgFiles = JFolder::files($searchpath, &#039;.jpg&#039;);&lt;br /&gt;
&lt;br /&gt;
// Now we need some stuff from the JFile:: class to move all files into the new folder&lt;br /&gt;
foreach ($jpgFiles as $file)&lt;br /&gt;
{&lt;br /&gt;
   JFile::move($searchpath . &#039;/&#039; . $file, $searchpath . &#039;/&#039; . &#039;jpg&#039; . $file);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
//Lastly, we are moving the complete subdir to the root of the component.&lt;br /&gt;
if (JFolder::move($searchpath . &#039;/&#039;. &#039;jpg&#039;, JPATH_COMPONENT))&lt;br /&gt;
{&lt;br /&gt;
   //Redirect with perhaps a happy message&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
   //Throw an error&lt;br /&gt;
}&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is example script only, but gives a general idea of the possibilities.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;[[Category:Development]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Yvesh</name></author>
	</entry>
</feed>