Our Developer learning pathway helps PHP developers get familiar with Moodle development essentials. For existing Moodle developers, our intermediate courses will help you refresh and deepen your understanding of Moodle plugin architecture and design.
For each course you complete, you'll earn a badge! Certificates of completion are available for a small fee when you complete a program.
If you're new to Moodle, we suggest you begin with our Introduction to Moodle course, before working through the beginner developer courses
At Beginner level your learning will focus on basic development tasks, covering topics such as:
- Setting up a Moodle Development Environment.
- Web Output Essentials.
- Moodle’s Modular Architecture and APIs.
- Moodle Access & Security Essentials.
- Unit Testing in Moodle.
- Accessible Development Practices.
- MoodleNet for Developers.
Read about the Moodle Developer Basics program.
At Intermediate level you will expand your Moodle development skill set and reflect upon development practices. You will cover topics such as:
- Update Plugins to Moodle 4.0.
- Moodle Architecture.
- Cross-DB compatible queries.
- Moodle page layout and site navigation APIs.
- Making your plugin Moodle App compatible.
- Moodle security.
Read about the Moodle Developer Skills program.
At Advanced level, as an experienced Moodle Developer, you will learn how to manage release cycles and use advanced coding techniques. We will offer topics such as:
- Integrating Moodle with external systems via Web Services.
- Authentication and access control, roles and permissions, guest access.
- Moodle’s in-built web security mechanisms.
- XMLDB, installation and upgrade APIs, database scheme changes.
- Files storage and serving API in Moodle
We welcome community members to help:
- Present webinars to an audience of other Moodlers.
- Work with us to create and facilitate short online courses.
- Translate Moodle Academy courses into more languages.
As we develop the Moodle Academy we are keen to hear what you want to learn about in our webinars and courses.
Get Involved! and share your thoughts.