Student Course Grades Report

A comprehensive grade reporting tool for Moodle that combines all course grades into a single HTML report.

The Student Course Grades Report plugin (report_studentgrades) allows users to view and export their grade reports from ALL courses they are enrolled in as a single, comprehensive HTML document. Unlike traditional grade reports that show one course at a time, this plugin provides a holistic view of a student's academic performance across their entire enrollment history.

Key Features

  • Single-file Export: Export all course grades for a student as one combined HTML file.
  • Hierarchical Structure: Clear grade structure with categories and totals for each course.
  • Deep Customization: 18+ color settings manageable via an admin settings page.
  • Brand Integration: Seamless site logo integration.
  • Word-Compatible: HTML output is perfectly formatted for easy MS Word document processing.
  • RTL Support: Full support for Right-To-Left languages.
  • Overall Summary: Displays global metrics like total courses enrolled.
  • Privacy & Permissions: Strict grade visibility and permission checking, including integration with local_parentportal for linked parent accounts.
  • Print-Ready: Perfectly optimized print-friendly CSS styling.
  • Admin Capabilities: Authorized roles can view any student's cross-course report.
  • AI Performance Analysis: Dual-mode AI analysis (Instant on-screen modal & Asynchronous email reports).
  • Exportable AI Reports: Instant print or PDF downloads of the on-screen AI feedback.
  • Rate Limiting Cooldown: Built-in timers to prevent AI API spam and credit abuse.

Use Cases

This plugin is incredibly useful for various scenarios:

  • Students preparing academic portfolios or applying for scholarships (needing a comprehensive grade report).
  • Academic Advisors reviewing student progress across all courses.
  • Parents viewing their child's complete academic record.
  • Administrators needing end-of-semester comprehensive grade summaries.
  • Transfer Students needing complete transcripts for external institutions.

AI-Powered Performance Analysis

The plugin features a robust, dual-mode AI analysis system to evaluate student grades and provide actionable, constructive academic feedback:

1. Instant On-Screen Analysis (Moodle Core AI)

  • Real-time Feedback: Uses Moodle 4.5+'s native AI subsystem (\core_ai\manager) to analyze grades.
  • Interactive Modal: Renders the feedback instantly inside a Moodle modal, complete with custom loaders.
  • Export Controls: Includes on-screen buttons to Print the response or Download as PDF dynamically.
  • Fallback Mode: Safely displays a simulated analysis on older Moodle sites where Core AI is not available.

2. Email-Based Analysis (n8n Webhook Integration)

  • Asynchronous Execution: Sends complete, structured student grade data (including activities, categories, grades, and totals in JSON format) to an external webhook.
  • Email Delivery: The external system (e.g., n8n) parses the grade profile, runs the LLM, and emails the PDF/text report to the student's email.
  • Secure Auth: Uses bearer token authentication and custom request headers (Authorization and X-N8N-Chat-Token) to verify webhook access.

3. Rate Limiting & Cooldown

  • API Protection: Admins can define a custom cooldown period (in minutes) to limit how frequently a user can request AI analysis.
  • State Tracking: Tracks the request timestamp per student using Moodle's user preferences.

Installation

  1. Download the plugin ZIP file.
  2. Extract the contents to /path/to/moodle/report/studentgrades/.
  3. Log in as an admin and visit Site Administration > Notifications to complete the database installation.
  4. Configure color settings at Site Administration > Plugins > Reports > Student Course Grades.
  5. Set up AI Analysis Settings (enable buttons, enter webhook URL/token, customize the prompt, and set cooldown minutes) on the same page.

Access Navigation

For Students

Students can access their comprehensive report from:

  • Their User Profile Menu
  • Direct access via the URL: /report/studentgrades/index.php

For Teachers & Admins

Users with the appropriate capabilities can access any student's report by simply navigating to their profile and selecting the report tab.

Plugin Architecture

Note: This is a USER-LEVEL report plugin, meaning it operates at the user context level rather than the course context. It actively complements existing course-level grade reports by extracting and combining a cross-course perspective.

Comparison with Core Course Grade Reports

  • Course Grade Report: One course → All students
  • Student Course Grades Report: One student → All courses

Both plugins can coexist peacefully and serve entirely different purposes.

Privacy

Important: This plugin does not store any personal data. It strictly provides a read-only functionality to aggregate and export grade data already stored by Moodle's core grade system. All exported HTML files are generated dynamically on-demand and are never persistently stored or cached.

© 2026 Smart Learn · Mohammad Nabil · Egypt