<!-- https://dulitha.net/work/lms-supporting-tools/ -->

Case study 07 · 2026 · Designer and builder
# Four small tools that filled gaps around a government LMS

Alongside the main build of a government training portal, I built four small tools so users, the partner and I could handle routine tasks without waiting for developer time.

*Part of the training portal project in [Moving a government training portal onto Moodle 5.0, now with 3,800+ users](https://dulitha.net/work/lms-migration-drupal-to-moodle/). This one covers tools built alongside the main platform.*

## At a glance

- **My role:** designer and builder
- **Period:** 2026
- **Scale:** 4 tools; about 90 training enquiries received through the enquiry form
- **Worked with:** a training delivery partner and the studio's director
- **Tools:** PHP, JavaScript, HTML/CSS, Moodle 5.0, an AI coding assistant
- **Headline outcome:** help content, enquiries, historic certificates and calendar links are all handled without changes to the main platform, and enquiry data flows into the LMS with one click

## The situation

The new portal was built by an offshore development vendor. Some everyday needs weren't part of the main build, or came up after launch: help content that changes often, a way for schools to ask about training, certificates for past training, and calendar links in emails.

Each could have gone into the vendor's queue. But each was small and self-contained, and the vendor's time was better spent on the core platform.

## My role

I designed and built all four, and I maintain them. They sit next to the main platform rather than inside its code, so I can change them without a release.

## What I did

### Help and FAQ pages with an admin panel

I built the portal's help and FAQ pages, with a small admin panel so I can update the content directly. They replaced the old help links across the portal. When a question comes up repeatedly, I can add the answer the same day.

### Training enquiry form with a live admin dashboard

Schools and council members needed a simple way to ask about face-to-face or virtual training. I built an enquiry form that sends each request to the partner, and it has received about 90 enquiries since launch.

The admin side is the larger part of the tool. It shows usage and enquiries in real time, so the partner can track each request from arrival to follow-up. Although the tool sits outside the main platform, I integrated it with the LMS: at the click of a button, the relevant pages in the LMS fill in automatically from the enquiry's details. Nobody has to retype what a school has already told us.

### Certificate designer

The partner's past session records weren't brought into the new platform. That left the partner without an easy way to find or produce certificates for completions from before the migration. I built a certificate designer and output tool so the partner can produce those certificates themselves, with standard fonts and layout.

### Add-to-calendar helper

Participants asked for a way to add sessions to their calendars. I wrote a small PHP helper that turns a link in an email into a calendar entry with the session's details. It's now in the portal's booking and session emails.

## Results

- 4 tools in use alongside the main platform.
- About 90 training enquiries received and tracked in real time, with LMS pages filled in from an enquiry at the click of a button.
- The partner can produce certificates for pre-migration training themselves.
- Help content updated directly, without a release.
- Booking and session emails carry an add-to-calendar link.

## What I'd do differently

- **Build a test mode into every tool.** The enquiry form sends real emails, so it can't be test-submitted on the live site without reaching the partner. A switch that sends to a test address would make every release easier to check.
- **Write a one-page note for each tool.** Because the tools sit outside the main platform, it isn't obvious they exist. A short note on where each one lives, what it does and how to update it would make them easy to hand over.

## Tools and skills

- **Development:** PHP, JavaScript, HTML/CSS, admin dashboards, integration with the LMS, calendar (.ics) generation
- **Platform:** Moodle 5.0 integration points and the portal's look and feel
- **Analysis:** spotting gaps that are cheaper to fill alongside the platform than inside it
- **AI:** an AI coding assistant (Claude Code) for parts of the build, including the certificate designer, with every change tested by me


---

*Client, partner and vendor names, and some details, are left out. Any visuals are recreations with invented data.*
