Running a scholarship program sounds simple on paper - publish a form, collect applications, verify documents, disburse funds. In practice, it quickly turns into a fragmented mess: spreadsheets for applicant tracking, WhatsApp groups for candidate queries, email threads for verification, and manual follow-ups for disbursement status. Multiply this across hundreds or thousands of applicants, and the process becomes nearly impossible to manage without either expensive proprietary SaaS tools or a large ops team.
Since providing scholarships is our focus area, we were facing the same problem. Our scholarship program needed a system that could handle the entire lifecycle - application intake, eligibility screening, document verification, communication with applicants, and disbursement tracking - without vendor lock-in and recurring SaaS costs, while staying self-hosted for data control.
Getting there wasn't a straight path. We first tried low-code/no-code tools like Directus and Saltcorn, expecting them to give us a quick head start on building an internal role-based access control portal. All these solutions failed to meet our requirements like role-based workflows, structured multi-stage approval & verification processes, customisation and integrations that these tools weren't originally designed for. Rather than fight the tools, we stepped back and asked: what open-source system already understands “cohorts,” “stages,” “eligibility,” and “structured progression of a user through a program”?
That question led us to an unlikely solution: Moodle, the open-source LMS. We repurposed Moodle's course/cohort/enrolment model to represent scholarship cycles, application stages, and applicant progression - effectively turning an LMS into a full-fledged scholarship management web portal, self-hosted on a Digital Ocean droplet.
One thing that made Moodle a genuinely strong fit was its plugin ecosystem - a large repository of ready-made plugins, combined with a clean path to build and integrate our own. This let us go beyond off-the-shelf functionality and develop two custom plugins specific to our workflow: the first lets applicants check their application status directly within the portal, and the second maps the data our verification team enters during document verification into structured feedback fields (configured using Moodle's structured feedback plugin) against each student's profile fields, so verification outcomes stay tied to the applicant's record instead of living in a separate spreadsheet.
But a web portal alone doesn't solve the last-mile communication problem - most of our applicants are far more comfortable on WhatsApp than logging into a web dashboard. So we're now building an AI-enabled WhatsApp chatbot using Glific, an open-source WhatsApp CRM built for the social sector, to handle applicant queries, status updates, and document collection conversationally.
In this talk, I'll walk through:
Why purpose-built or low-code tools (Directus, Saltcorn) didn't fit a workflow-heavy, stage-based process like scholarships
How Moodle's plugin ecosystem let us build two custom plugins - one for applicant status checks, and one for mapping document-verification data into structured feedback fields tied to student profiles
How we reinterpreted Moodle's LMS primitives (courses, cohorts, enrolment status, activity completion) to model a scholarship pipeline
Our self-hosting setup on a Digital Ocean droplet and the practical tradeoffs of running Moodle outside its "intended" use case
How Glific is helping us extend the portal's reach to WhatsApp with an AI-assisted chatbot for applicant support
Lessons learned in bending open-source tools to unconventional use cases, and where we hit walls
What makes this stack interesting:
Zero-license-cost, fully self-hosted scholarship management system built entirely from open-source components
Creative reuse of an LMS (Moodle) as a general-purpose workflow/cohort management portal
Integration of a conversational, AI-enabled WhatsApp layer (Glific) for low-friction applicant engagement
Honest account of tool evaluation and failure - Directus and Saltcorn didn't work for us, and why that matters for others evaluating similar tools
A reusable blueprint for NGOs, education-focused organizations, and small teams who need robust program management without SaaS costs