Moodle LMS integration (not started) #6
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Add Moodle as a course-delivery/LMS layer alongside the current Hugo+Go stack — course delivery, progress tracking, assessments, certificates, gated behind the same coach/client privacy expectations the rest of the site holds to. Not started — no PHP/MySQL infrastructure exists in this repo today, and this is a bigger infra commitment than anything else in
docs/future_additions.md.Shape of the change: Moodle would sit at
/courses(subpath or subdomain) behind nginx, needing its own PHP-FPM + MySQL/MariaDB services — a real addition to the current "nginx + one Go binary" footprint, not a Go-API-only feature.deploy.shwould need a Moodle migration/data-directory step, and backups would need to cover the Moodle database separately fromleads.db/version_history.db(seedocs/DEPLOYMENT.md's Backup Strategy).Integration surface: Moodle's REST web-service API (
/login/token.phpfor token auth,moodle/webservice:createtoken+webservice/rest:usecapabilities) is the mechanism for syncing leads into Moodle users, auto-enrolling them in courses, and getting enrollment/progress events back — new Go API endpoints (POST /moodle/sync-user,POST /moodle/enroll,POST /moodle/webhook), not something that reuses the existing booking/CMS endpoints.Open design questions, not yet decided: single sign-on between the Hugo site's (nonexistent today) visitor auth and Moodle's own login; whether lead→Moodle user mapping happens at signup or at first course access; GDPR export/deletion needs to cover the Moodle database too, not just
leads.db.See
docs/future_additions.md("Moodle LMS Integration"). Also connects to the user's existing moodle/fetch_ml plans noted in infra project memory (tenancy model).