MR
Mayur Rathi
@github
⭐ 34.1k GitHub stars

Moodle

Moodle是一款code方向的AI技能,核心价值是Instructions for GitHub Copilot to generate code in a Moodle project context,可用于解决开发者在code领域的实际问题,帮助用户提升效率、自动化重复任务或优化工作流。

Instructions for GitHub Copilot to generate code in a Moodle project context.

Last verified on: 2026-05-30
mkdir -p ./skills/moodle && curl -sfL https://raw.githubusercontent.com/github/awesome-copilot/main/skills/moodle/SKILL.md -o ./skills/moodle/SKILL.md

Run in terminal / PowerShell. Requires curl (Unix) or PowerShell 5+ (Windows).

Skill Content

# Project Context


This repository contains a Moodle project. Ensure that any generated code is compatible with the specific Moodle version used in this project (for example, Moodle 3.11, 4.1 LTS, or later).


It includes:

- Plugin development (local, block, mod, auth, enrol, tool, etc.)

- Theme customization

- CLI scripts

- Integrations with external services using the Moodle API


# Code Standards


- Follow the official Moodle Coding guidelines: https://moodledev.io/general/development/policies/codingstyle

- PHP must be compatible with the core version (e.g., PHP 7.4 / 8.0 / 8.1).

- Do not use modern syntax that is not supported by core if it breaks compatibility.

- Class naming must use Moodle namespaces.

- Follow Moodle’s standard plugin directory layout (for example: classes/output, classes/form, db/, lang/, templates/…).

- Mandatory use of Moodle security functions:

- `$DB` with SQL placeholders

- `require_login()`, `require_capability()`

- Parameters handled with `required_param()` / `optional_param()`


# Code Generation Rules


- When creating new PHP classes in plugins, use the Moodle component (Frankenstyle) namespace that matches the plugin's component name, e.g. `local_myplugin`, `mod_forum`, `block_mycatalog`, `tool_mytool`.

- In plugins, always respect the structure:

- /db

- /lang

- /classes

- /templates

- /version.php

- /settings.php

- /lib.php (only if necessary)


- Use renderers and Mustache templates for HTML. Do not mix HTML inside PHP.

- In JavaScript code, use AMD modules, not inline scripts.

- Prefer Moodle API functions over manual code whenever possible.

- Do not invent Moodle functions that do not exist.


# Examples of What Copilot Should Be Able to Answer


- "Generate a basic local plugin with version.php, settings.php, and lib.php."

- "Create a new table in db/install.xml and an upgrade script in db/upgrade.php."

- "Generate a Moodle form using moodleform."

- "Create a renderer with Mustache to display a table."


# Expected Style


- Clear and specific answers in the Moodle context.

- Always include files with full paths.

- If there are multiple ways to do something, use the approach recommended by Moodle.

🎯 Best For

  • Developers scaffolding new projects
  • Prototype builders
  • Claude users
  • GitHub Copilot users
  • Software engineers

💡 Use Cases

  • Bootstrapping React components
  • Creating API route handlers
  • Code quality improvement
  • Best practice enforcement

📖 How to Use This Skill

  1. 1

    Install the Skill

    Copy the install command from the Terminal tab and run it. The SKILL.md file downloads to your local skills directory.

  2. 2

    Load into Your AI Assistant

    Open Claude or GitHub Copilot and reference the skill. Paste the SKILL.md content or use the system prompt tab.

  3. 3

    Apply Moodle to Your Work

    Open your project in the AI assistant and ask it to apply the skill. Start with a small module to verify the output quality.

  4. 4

    Review and Refine

    Review AI suggestions before committing. Run tests, check for regressions, and iterate on the skill output.

❓ Frequently Asked Questions

Can I customize the generated output?

Yes — modify the skill's prompt instructions to match your project conventions and coding style.

Is Moodle compatible with Cursor and VS Code?

Yes — this skill works with any AI coding assistant including Cursor, VS Code with Copilot, and JetBrains IDEs.

Do I need specific dependencies for Moodle?

Check the install command and Works With section. Most code skills only require the AI assistant and your codebase.

How do I install Moodle?

Copy the install command from the Terminal tab and run it. The skill downloads to ./skills/moodle/SKILL.md, ready to use.

Can I customize this skill for my team?

Absolutely. Edit the SKILL.md file to add team-specific instructions, examples, or workflows.

⚠️ Common Mistakes to Avoid

Using generated code without understanding

Understand what generated code does before shipping it to production.

Skipping validation

Always test AI-generated code changes, even for simple refactors.

Missing dependency updates

Check if the skill requires updated dependencies or new packages.

🔗 Related Skills