Summer of Code 2010 Project Ideas

From Joomla! Documentation

Revision as of 08:31, 22 February 2010 by Pollen8 (talk | contribs) (Ideas)

Welcome!

Welcome to the Joomla! Google Summer of Code (GSoC) 2010 project ideas page. As we move forward with the 2010 version of the Joomla! GSoC, we will use this page to develop possible project ideas. Please note that anyone who is interested can participate in this process. You do not have to be a GSoC student or mentor to suggest possible project ideas. Thanks!

Ideas

Improve Image Presentation Capabilities

This project could include:

  • Expand the JHtml modal behaviour to support groups of images (eg Litebox or similar).
  • A content plugin to support modal gallery displays or inline image sliders.
  • A module to support galleries of images.
Mentor: Unassigned
Skills: Joomla CMS framework, MVC, PHP 5.2, MySQL
Difficulty: medium
Audio/Video Support

This project could include:

  • Sourcing or creating a FOSS flash audio (see http://flash-mp3-player.net/) and video player.
  • A content plugin to support embedding different types of audio files easily in content.
  • A content plugin to support embedding different types of video files (both local and hosted, eg vimeo) easily in content.
Mentor: Unassigned
Skills: Joomla CMS framework, Flash
Difficulty: medium
Google Map Support

This project could include:

  • An editor-xtd plugin that allows you to insert "map code" for a content plugin.
  • A content plugin to display a map with content.
  • A module to display a map.
  • Support for finding directions.
  • Map based on address data in individual contacts
  • Map all addresses in a category of contacts
Mentor: Unassigned
Skills: Joomla CMS framework, Javascript
Difficulty: medium
Simple User Subscription and User Utilities

This project would be suite of extensions that would provide enhanced user features such as:

  • Allow you to manage user account expiry.
  • Allow you to manage password expiry.
  • Allow for configurable email messages.
  • Allow for user registration approval.
  • Clean up bad user records.
  • Run simple reports on user registration data.
  • Bulk import of users
Mentor: Unassigned
Skills: Joomla CMS framework, MVC, PHP 5.2, MySQL
Difficulty: medium
Extension Builder

This project would involve a component that builds other components, modules, plugins, languages and templates in skeletal form. It could also be used to create/edit new component and module layout overrides in templates.

Mentor: Unassigned
Skills: Joomla CMS framework, MVC, PHP 5.2, MySQL
Difficulty: medium


Joomla! API Reference

Currently the Joomla! API reference at [1] is not as useful as it could be. Develop a way to present the information in a useful (and search able) format and with the ability to have user contributed notes in a way similar to [2].

Currently api.joomla.org is static html produced by phpdocumenter. The project could achieve these goals by developing an extension or framework application to integrate the output from phpdocumenter with Joomla and incorporating a commenting style system.

Note: There are also materials here in docuwiki format [3] that could be incorporated. Other material is here [4].

Mentor:
Skills Needed: PHP, MVC, MySQL, Joomla! CMS Framework
Difficulty: Hard

Improve Unit Test Coverage

Work has been started on this with the goal of a continuous build model, but test coverage is incomplete. We need to add many more unit tests.

Mentor:
Skills Needed: PHP, PHPUnit, Joomla! Framework
Difficulty: Medium

Improve System (Functional) Test Coverage

Work has been started on this with the goal of a continuous build model, but test coverage is incomplete. We need to add many more system tests.

Mentor:
Skills Needed: PHP, Selenium, Joomla! CMS
Difficulty: Medium


MooTools

Build some things with Moo Tools that people can get for free from the Joomla! sites.

Mentor:
Skills Needed: PHP, Javascript, Joomla! CMS, MooTools
Difficulty: Medium


Enhanced Template Manager

Jooomla! 1.6 improves the template manager substantially. Continue this by creating the ability to manage overrides form the template interface, develop an easier interface for beginners to modify css, and similar improvements in usability.

Mentor:
Skills Needed: PHP, Javascript, Joomla! CMS
Difficulty: Medium

Social layer

Joomla Social API. Not necessarily a component like Community Builder but an API to allow other components to build on top of. Consider API for

Mentor:
Skills Needed: PHP, Javascript, Joomla! CMS
Difficulty: Hard