Skip to content

Theemiss/MoodleTools

Repository files navigation

MoodleTools

Flask utilities and cron scripts for Moodle cohort management, bulk user onboarding emails, and scheduled course notifications via the Moodle Web Services API.

Modules

Directory Purpose
AdminDashbord/ Flask admin dashboard: cohorts, users, password reset emails
NotfyMailer/ Scheduled cohort/course notification emails via Moodle WS API
UserCreator/ Bulk user signup links and HTML onboarding emails

Setup

  1. Copy .env.example to .env and fill in values.
  2. Install dependencies: pip install -r requirements.txt (see per-module requirements.txt where present).
  3. Point COHORTS_CSV at a local CSV (see examples/ for schema).

Environment variables

Variable Description
MOODLE_URL Base Moodle URL (e.g. https://example.com/moodle)
MOODLE_TOKEN Moodle webservice token
FLASK_SECRET_KEY Flask session secret
ADMIN_EMAIL / ADMIN_PASSWORD Admin dashboard login
DEFAULT_USER_PASSWORD Default password for bulk user reset flows
SENDER_EMAIL From address for outbound mail
SMTP_HOST / SMTP_PORT / SMTP_USER / SMTP_PASSWORD SMTP relay
DKIM_SELECTOR / DKIM_PRIVATE_KEY_PATH Optional DKIM signing
MAIL_BCC Optional BCC for test copies
COHORTS_CSV Path to cohort cache CSV
DATA_DIR Runtime data directory for NotfyMailer JSON caches

Examples

Sample CSV schemas live in examples/. Do not commit real student data.

Related repos

License

MIT

About

Moodle cohort admin, user provisioning, and email notification utilities

Topics

Resources

License

Stars

0 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors