Blueprint Gallery¶
Ready-to-use blueprint examples for common Moodle Playground scenarios.
Each blueprint can be loaded via the ?blueprint-url= query parameter or
pasted into the Blueprint panel in the playground UI.
All examples live in
assets/blueprints/examples/.
Minimal¶
File: minimal.blueprint.json
The smallest possible blueprint — installs Moodle, logs in as admin, and redirects to the dashboard. Use this as a starting point for custom blueprints.
?blueprint-url=assets/blueprints/examples/minimal.blueprint.json
What it does:
- Installs Moodle with default admin credentials
- Logs in as admin
- Lands on
/my/(dashboard)
Course with Content¶
File: course-with-content.blueprint.json
Creates a single course with a category, a label module, and an assignment. Good for demonstrating the course creation and module addition flow.
?blueprint-url=assets/blueprints/examples/course-with-content.blueprint.json
What it does:
- Creates a "Science" category
- Creates "Introduction to Physics" course (PHYS101)
- Adds a welcome label and an assignment to section 1
- Lands on the dashboard
Multi-User¶
File: multi-user.blueprint.json
Creates multiple users and enrolls them in a course with different roles. Demonstrates bulk user creation and enrollment.
?blueprint-url=assets/blueprints/examples/multi-user.blueprint.json
What it does:
- Creates teacher and student accounts
- Creates a course
- Enrolls users with appropriate roles (editingteacher, student)
Classroom Ready¶
File: classroom-ready.blueprint.json
A full classroom setup with a teacher, three students, a 4-section course with labels, assignments, and a URL resource across multiple units.
?blueprint-url=assets/blueprints/examples/classroom-ready.blueprint.json
What it does:
- Creates 1 teacher + 3 student accounts
- Creates "English for Beginners" (ENG101) with 4 sections
- Enrolls all users with correct roles
- Adds content across all sections: labels, assignments, URL resources
- Lands on the course view
Plugin: eXeLearning (mod_exeweb)¶
File: plugin-exeweb.blueprint.json
Installs the eXeLearning mod_exeweb activity
module from its GitHub repository and creates a demo course.
?blueprint-url=assets/blueprints/examples/plugin-exeweb.blueprint.json
What it does:
- Installs
mod_exewebfromexelearning/mod_exeweb(main branch) - Creates an "Interactive Content" category
- Creates "eXeLearning Demo Course" (EXEDEMO)
- Adds an introductory label
- Lands on the course view
Note
Plugin installation downloads the GitHub ZIP through the configured addon proxy before extracting it into MEMFS. The first load may take a few extra seconds.
Plugin Showcase¶
File: plugin-showcase.blueprint.json
Installs a third-party plugin (Board — a Kanban-style activity) and creates a course to demonstrate it.
?blueprint-url=assets/blueprints/examples/plugin-showcase.blueprint.json
What it does:
- Installs
mod_boardfrom GitHub - Creates a "Plugin Showcase Course"
- Adds a descriptive label
- Lands on the dashboard
How to use¶
Via URL parameter¶
Append ?blueprint-url= with the path to any example:
https://ateeducacion.github.io/moodle-playground/?blueprint-url=assets/blueprints/examples/classroom-ready.blueprint.json
Via the Blueprint panel¶
- Open the playground
- Click the Blueprint button in the toolbar
- Paste the JSON content of any example into the editor
- Click Apply
Via inline base64¶
Encode any blueprint as base64 and pass it via ?blueprint=:
?blueprint=eyJzdGVwcyI6W3sic3RlcCI6Imluc3RhbGxNb29kbGUifV19
Creating your own¶
Start from minimal.blueprint.json and add steps. See the
Blueprint Reference for all available step types,
resource formats, and configuration options.
Tips¶
- Use
constantsfor values that appear in multiple steps (usernames, emails) - Use
preferredVersionsto pin PHP and Moodle versions - Set
landingPageto control where the user lands after boot - Plugin installation steps (
installMoodlePlugin) accept GitHub URLs directly - The
pluginTypeandpluginNamefields are auto-detected from GitHub repo names following themoodle-{type}_{name}convention