GSoC_2019_ideas_list
List of ideas for Google Summer of Code 2019. Our development efforts aim towards the release of phpMyAdmin 5.0 or 5.1.
For details about participating in the Summer of Code for the phpMyAdmin project, please refer to our GSoC 2019 applicant guide.
Possible mentors are listed for each idea; however, mentors generally do not wish to help a student drafting his proposal. You can use the phpmyadmin-devel mailing list to ask specific questions about these ideas.
For a general reference about Refactoring, see https://en.wikipedia.org/wiki/Code_Refactoring.
On this page:
- Convert the UI to Bootstrap
- Error reporting server
- Introduce modern JS features and tools to phpMyAdmin codebase
- General improvements
- Refactoring and improving Designer
- Your idea
phpMyAdmin has recently added Bootstrap 4 support. The goal of this project is to convert the existing user interface to the Bootstrap format, not to redesign the interface neither create a theme with Bootstrap style.
For each step of your project, it should be possible to merge it to the master branch, so take this into consideration when planning.
The buttons have already been converted to Bootstrap, see #14792.
Experience with HTML and CSS is desired and experience with Bootstrap and Sass is welcome.
Possible mentors: Maurício Meneghini Fauth
There are many small enhancements in the bug tracker which are too small to make a single project, but they can be grouped together to make a suitable GSoC project.
Possible mentors: Saksham Gupta
None of above did attract you? Feel free to come up with your own idea, you can take inspiration from the enhancement requests: https://github.com/phpmyadmin/phpmyadmin/issues?q=is%3Aopen+is%3Aissue+label%3Aenhancement
Please note that the project is supposed to take the whole summer, so you will most likely have to combine several enhancement requests to get a big enough project.
Due to a number of scheduling conflicts this year, we have a number of projects without available mentors. We'll likely be unable to accommodate applicants for these project. We don't make final determinations of students, mentors, or even which projects to accept until after the application period has ended, but by indicating that these projects are less likely to be accepted, we hope to give students a fair and open understanding of our plans and intentions.
phpMyAdmin's error reporting server is a service which collects failures happening on the phpMyAdmin installations all around the world. It's implemented in CakePHP and is serving us already few years.
However the server would need quite some improvements (see the issue tracker), for example:
- Improved stats page
- Mass operations on incidents and notifications
- Public read only interface
- Persistent settings
See its code at https://github.com/phpmyadmin/error-reporting-server/
Requirements: PHP and MySQL knowledge, CakePHP experience welcome.
Possible mentors:
We already use Composer for managing PHP dependencies. We'd love to have the JavaScript dependencies tied up through a dependency manager too (like npm, yarn etc.). You are free to explore, reason about and come up with a choice in your proposal.
For introducing ease to use and better maintainability, we would like to revamp/restructure/rewrite our JavaScript codebase to use better and flexible modular patterns; while moving away from exposing all functions, variables etc. to the global scope. While modularizing the codebase, we would want to investigate and introduce usage of a bundler like Webpack, Browserify etc.
If you feel that your proposal timeline won't allow time for the whole codebase to be revamped, we expect you to specify handling the part-upgrades, without breaking the usability completely.
Experience with the following is welcome (but not required):
- Intermediate JavaScript,
- A JavaScript package manager,
- Webpack (or any other bundler)
Possible mentors: Deven Bansod
The Designer was written without any library like jQuery, thus the JavaScript needs to be rewritten and some issues need to be fixed. Feel free to explore what you can do to improve Designer.
It's good to have some experience with JavaScript and jQuery.
Possible mentors:
Popular destinations:
- Team meetings
- GSoC home
- Developer guidelines
- How to install on Debian and Ubuntu
- Issue and pull-request management
User resources: