Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Talk:Projects for new developers

From MoodleDocs
Revision as of 17:30, 9 February 2017 by Helen Foster (talk | contribs) (potential projects for which the mentor is not yet confirmed)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Note: The following list of projects have mentors who have not yet confirmed whether they currently wish to mentor a project. If you are listed as a possible mentor, please either move your project to Projects for new developers (to confirm that you wish to mentor the project) or delete it from this page (if you no longer wish to offer it as a possible project).

Clef | Two-Factor Authentication

Create Clef two factor authentication plugin, so a user can log in using their mobile to reduce login time. This will improve security and reduce the login time for users.

Skills required: PHP, Javascript
Difficulty level: Medium
Possible mentor: Rajesh Taneja

Multi-step login screen

Update the login screen to first ask for a username, and then the password as a two-step process. See the login process for Google

Skills required: PHP, JavaScript, Mustache
Difficulty level: Medium
Possible mentor: John Okely

2FA - Two Factor Authentication

Add support for Two-Factor Authentication. This would work well when combined with the Multi-step login screen. Factors requiring consideration include the Mobile app integrations.

Skills required: PHP, JavaScript, Mustache
Difficulty level: Medium
Possible mentor: Andrew Nicols

CLI Helper for Moodle Developers

Possibly an addendum to MDK, a set of scripts to help facilitate various common tasks. In particular:

  • creation of Persistent Objects including their Class files, the XMLDB code to create their tables, and the XMLDB upgrade scripts required to upgrade (including version bumps)
Skills required: PHP, Python?
Difficulty level: Hard
Possible mentor: Andrew Nicols

Trait for Mock DB in unit tests

In moodle we run every unit test using a real database. This is extremely slow with little benefit. Granted it does catch some cross-database compatibility issues, but we don't need it for every test. We should add a trait that test classes can use that will automatically set up mock $DB to save processing power and unnecessary waiting for DB.

Skills required: PHP, PHPUnit
Difficulty level: Easy
Possible mentor: Andrew Nicols or John Okely

Mock implementation of DML

In moodle we run every unit test using a real database. This is extremely slow with little benefit. Granted it does catch some cross-database compatibility issues, but we don't need it for every test. It is possible to extend moodle_database and mock all the calls to use an in memory/mocked database. The easiest way to do this may be to use first make a Data Access Object implementation, and then use a mock DAO

Skills required: PHP, PHPUnit
Difficulty level: Very Hard
Possible mentor: John Okely