Development Wiki

Difference between revisions of "GSoC/2015/Ideas"

From phpBB Development Wiki

Line 90: Line 90:
* Michael Cullum - IRC: MichaelC // Email: // Timezone: UTC // Focus: Website Ideas
* Michael Cullum - IRC: MichaelC // Email: // Timezone: UTC // Focus: Website Ideas
* Marc Alexander -  IRC: Marc // Timezone: UTC +1 // Focus: Core Ideas
* Marc Alexander -  IRC: Marc // Timezone: UTC +1 // Focus: Core Ideas
* Dhruv Goel - IRC: Dhruv // Timezone: UTC +5:30 // Focus: Core Ideas

Revision as of 23:01, 14 February 2015

This page is based on the ideas page of 2014.

General Information

phpBB is applying to participate as a mentor organisation in Google Summer of Code 2015. If you are a student please read GSoC/2015/Instructions for application instructions. On this page you can find ideas for projects which might inspire your application. Keep in mind that you may also suggest your own project if you have a great idea for improving phpBB.

If you are a mentor, please add yourself to the list of available mentors of ideas that you think you could mentor. Feel free to add further ideas, preferably based on already discussed RFCs from Area51


phpBB Core

New phpBB Installer

Summary: The current installer used to set up phpBB is quite slow and requires user interaction at a lot of steps.

Expected results: A new, more user friendly and better extendable installer should be written. First all required data should be collected from the administrator, so the steps can be done by ajax, or pages being refreshed automatically. It should also be possible to add and possibly configure certain plugins (captcha) or extension on installation.

Knowledge Prerequisite: Object-oriented PHP, JS, jQuery

Available Mentors: Joas Schilling

Social Sharing Features

Summary: Create an extensible system supporting via an object oriented plugin system any number of 3rd party services to share content to. There may be different options, sharing a link to a topic or a particular post or maybe even a forum, or sharing complete posts or extracts of posts.

Expected results: User interface changes for sharing buttons/dialogs/etc. as well as an administration control panel page with options on configuring the various services which might require API keys to work. A extensible interface that allows extensions to supply further sharing backends.

Knowledge Prerequisite: Object-oriented PHP and Javascript required, familiarity with social sharing APIs (Facebook/Twitter) useful but not mandatory.

Available Mentors: Nils Adermann

Improved E-mail Options

Summary: The current emailing options in phpBB are somewhat lacking. Mass-emails can only be sent to specific users or a single specified group (not multiple groups and users). Administrators cannot choose specific or all forums to trigger notifications for all users. Subscriptions are currently limited to specific forums; there is no way to subscribe to all forums with one click). This is a very commonly requested feature for small community forums where users do not regularly check for updates.

Expected results: Merge the gap between forums and something like Google Groups. Improve the email notifications system for users as well as the mass-emailing system for administrators. Maintain "good practices" philosophy and the ability for users to opt not to receive notifications even if the administrator sets the feature enabled by default.

Knowledge Prerequisite: PHP, familiarity with "good email practices"

Available Mentors: Nils Adermann

Improved handling of uploaded images

Summary: Currently, phpBB supports uploading several types of images. While it is possible to create image thumbnails, images that exceed the dimensions set in the administrations control panel will be rejected. Users and board admins often request that the possibility to resize images during upload is added to the core.

Expected results: Add a modular system for resizing uploaded images based on the already existing RFC. The system should fall back to less preferred ways of resizing if other types are not available. Board admins should be able to specify a maximum file size and resolution of images that will be resized and possibly be able to set a flood limit.

Knowledge Prerequisite: PHP, JS, jQuery

Available Mentors: Marc Alexander


Area51/Development Micro-Site

Brief Explanation: Area51 is a micro-site for for development of phpBB. It contains the Continuous Integration, Development Discussion Board, API Documentation, Development Wiki, Bug Tracker and more. We would like this revamped in either a frontend way (new design that can have a header shared by all the web applications and design for the main informational pages) or new pages/features or both. Some suggested changes are below but you are not just limited to these and can suggest others in your proposal:

  • A New Getting Involved Page
  • More Statistics using data from Bamboo (CI), JIRA (Bug Tracker), Github and the development board
  • Intergration with JIRA, Bamboo and Github
  • Moving to phpDocumenter2 for API Documentation
  • New Area51 Style
  • Creating a parser for events docblocks and a UI to present the documentation in (Could be made a plugin for phpDocumenter2 if you choose)

Expected Results: We expect all proposed features/improvements/changes completed. It should be able to be broken down into smaller manageable phases/chunks (one per feature or bug fix) and your timeline should detail these phases.

Existing Code:

Knowledge Prerequisites: PHP (Essential), Web Design & Usability (Essential), HTML/CSS (Essential), Symfony (Preferred), Git (Preferred), Javascript (Useful).

Available Mentors: Yuriy Rusko, Michael Cullum

Your Own

You do not have to use one of the ideas listed here. For non-website ideas, RFCs on Area51 are a good source of ideas as they represent what our users already told us they want. However, if you propose an original idea it will have a higher chance of being accepted if it satisfies the following two criteria:

  1. Checkpointable - it should be possible to break down your project into pieces that are by themselves meaningful. In practical terms, this means you should be sending a pull request every 1-2 weeks reflecting your work during that period, and the pull request should be individually mergeable. Avoid proposing a project that cannot be split into 1-2 week chunks.
  2. Likely to be completed - this involves several factors, but at the end of the day the goal is for your work to be finished within the GSoC timeframe. You should start by detailing components of your project to sufficient extent that they can be estimated. Then, honestly estimate how long you think it will take you. Then double that estimate. If you exceed 3 months, your proposal is probably too ambitious and you should reduce its scope.


These are all the people affiliated with phpBB who are assisting with the program as (backup) mentors or (backup) org admins. Their IRC Nicks are listed and you can find them on freenode in #phpbb-dev. They can help you with anything related to the ideas they are mentoring or general GSoC queries.

Org Admins:

  • Main: Yuriy Rusko - IRC: Marshalrusty OR YuriyRusko // Email: // Timezone: UTC -5
  • Backup: Patrick Webster - IRC: Noxwizard // Timezone: UTC -6


  • Nils Adermann - IRC: naderman // Email: // Timezone: UTC +1 // Focus: Core Ideas
  • Joas Schilling - IRC: nickvergessen // Timezone: UTC +1 // Focus: Core Ideas
  • Yuriy Rusko - IRC: Marshalrusty OR YuriyRusko // Email: // Timezone: UTC -5 // Focus: Website Ideas
  • Michael Cullum - IRC: MichaelC // Email: // Timezone: UTC // Focus: Website Ideas
  • Marc Alexander - IRC: Marc // Timezone: UTC +1 // Focus: Core Ideas
  • Dhruv Goel - IRC: Dhruv // Timezone: UTC +5:30 // Focus: Core Ideas