We build custom plugins and upgrade-safe Boost child themes against Moodle's actual plugin and theme APIs — the workflow the plugin directory doesn't cover, and the branding a logo swap can't deliver.
Most Moodle sites run on whatever's free in the plugin directory and a recolored Boost theme. It works, until your workflow needs something that doesn't exist yet, or your brand needs to look like more than a logo swap.
The exact workflow your team needs just isn't covered by any free plugin.
Logo and basic colors only, with no deeper visual identity carried through the interface.
Direct core edits or unmaintained third-party plugins that break on the next Moodle upgrade.
We build purpose-made plugins against Moodle's plugin API, and upgrade-safe Boost child themes using SCSS and Bootstrap 5 — then layer in role-based dashboards and Mustache template overrides so your LMS ends up looking and working like your product, not a Moodle install with your logo pasted on top.
Everything needed to take your Moodle LMS from a default install to custom functionality and branding your team and learners actually notice.
Purpose-built activity modules and dashboard blocks when Moodle core and the plugin directory don't cover your workflow.
Built on Moodle's core Boost theme with Bootstrap 5 and SCSS variables, so your branding survives future Moodle upgrades instead of breaking on update.
Custom reports, scheduled tasks, and admin tools built as local or report plugins, wired into Moodle's own settings and permissions pages.
Custom UI/UX design carried through dashboards, login screens, and course pages — a full visual system, not a recolored default.
Plugins and themes that respect Moodle's roles and capability system, so admins, teachers, and students each see the right thing.
Built to Moodle's own coding standards and automated checks, so your plugins pass the plugin directory review and don't rot in maintenance.
If the main reason you haven't touched your Moodle theme is fear of it breaking on the next upgrade, read our dedicated breakdown of how we build themes to survive Moodle core updates.
See Upgrade-Safe Moodle ThemesLogini is a free Boost child theme we built and open-sourced — a modern login page redesign with one-click social login for Moodle 5.0 to 5.2. It's a small example of the same Boost child theme approach we use on every custom plugin and theme build.
Real Moodle plugin and theme work means working with Moodle's actual APIs, not fighting it with hacky overrides.
Activity modules, blocks, local plugins, and report plugins built against Moodle's documented plugin types and frankenstyle naming.
Structural UI changes — dashboards, course pages, login screens — done by overriding Mustache templates, without touching Moodle core PHP.
New capabilities defined correctly in access.php, so permission changes stay predictable instead of accidentally opening up access.
PHP_CodeSniffer's moodle standard, PHPDoc, and Moodle's plugin skeleton conventions applied to every file we ship.
Proper version.php bumps and upgrade.php steps for every release, so your plugin or theme updates cleanly instead of silently failing.
A clear, six-step process from discovery to ongoing support.
We review your current Moodle setup, brand guidelines, and the exact gap a plugin or theme needs to fill.
A fixed-scope plan covering plugin type, theme structure, and what's being tested before delivery.
Built as a proper Moodle plugin or Boost child theme, version-controlled and coding-standards compliant.
Tested across roles, devices, and — where relevant — screen readers, before touching your live site.
Staged, zero-downtime deployment plus a walkthrough of new settings.
Ongoing support for Moodle version upgrades and adjustments based on real usage.
Custom enrollment blocks, faculty dashboards, and course catalog layouts for large, multi-department sites.
White-label portals and compliance-tracking plugins that match your internal brand and reporting needs.
Cohort-management plugins and exam-prep-specific theming built to scale with your catalog.
Simplified navigation and parent-friendly layouts built around younger learners.
Marketplace-style course catalogs and instructor dashboards for mobile-first learner acquisition.
A plugin built for the one workflow the default plugin directory doesn't cover.
Your LMS looks like your organization, not a generic open-source install.
Clear navigation and role-correct dashboards mean less confusion for staff and students alike.
Built against Moodle's plugin and theme APIs, so a core update doesn't undo months of work.
No client logos or star ratings here — just the commitments every build is held to.
You work directly with the engineer building your plugin or theme — no account managers relaying messages back and forth.
The quote we give you upfront is what you pay. No surprise invoices once development starts.
Every plugin and theme is backed by real Moodle core, plugin API, and renderer experience — not a page-builder template.
Your plugin and theme source code, on your Moodle site. Nothing rented, nothing locked behind us after handover.
You know exactly where your build stands at every stage, from discovery through deployment — no radio silence.
A post-launch support window is built into every engagement, so a broken plugin after a Moodle upgrade doesn't become your problem alone.
Flat, one-time pricing — no annual fees, no custom quotes for a standard build. Need multiple plugins or an enterprise theme? Contact us for a custom quote.
$2,000 one-time
One custom plugin, or a branded Boost child theme.
$5,000 one-time
Custom plugin and theme built and shipped together.
Straight answers to what clients usually ask before starting a build.
A plugin adds or changes functionality — an activity type, a block, a report, an admin tool. A theme changes how Moodle looks — layout, branding, dashboards. Most projects involve one or the other; some need both, which is what our Professional tier covers.
Not if it's built correctly. We build against Moodle's plugin and theme APIs — Boost child themes, proper plugin types, Mustache overrides — rather than editing core files, which is what actually causes upgrade breakage.
We build and test primarily on Moodle 4.x and 5.x, using Bootstrap 5 and current plugin API conventions. We confirm compatibility with your specific version and any existing plugins during discovery.
A Starter build (one plugin or one theme) typically takes 2 to 4 weeks. Professional builds combining both usually run 5 to 8 weeks, depending on scope and revisions.
Yes — that's the whole point of a Boost child theme. We have a dedicated upgrade-safe theme service if long-term upgrade stability is your main concern.
You do, fully. The source code lives on your Moodle installation — nothing is rented or locked behind an ongoing license with us.
Yes, if you want it public. We build to Moodle's coding standards from the start, which is what the plugins directory review actually checks for.
We need admin access to scope the work accurately, but development and testing happen in a staging copy — your live site isn't touched until deployment.
The full overview of our Moodle development services, pricing, and process.
A closer look at how we build themes specifically to survive Moodle core upgrades.
How local_* plugins work, and when they're the right plugin type for the job.
How custom mod_* activity modules integrate with the gradebook, completion, and backup/restore.
Roles, reports, and grading workflows tailored to your organization.
Tell us about your Moodle site and we'll scope a plugin or theme build around it.
Get a Free Quote