Repolode
inducer

inducer/relate

A web-based courseware platform for running courses, with YAML/Markdown content, git-versioned material, and sandboxed auto-graded code questions.

Open-source alternative to:Canvas

Stars
437
Forks
126
Open issues
327
Last commit
24 hours ago

What is it?

RELATE (Environment for Learning And TEaching) is a web-based courseware package for instructors who want to host courses on their own server. Course content is written in a simple text format built on YAML and Markdown, and it is versioned through git so instructors can preview newly authored material while students continue working with an earlier version on the same instance.

The platform supports flexible rules for participation, access, and grading, and several courses can run on one installation. Its main differentiator is code questions: students write code in a text box with syntax highlighting, the code runs in a sandbox, and it is graded automatically, with an optional second stage of human grading. Plotting output is supported as well.

Beyond assignments, RELATE includes a class calendar, a grade book, statistics on student answers, tools for live in-class quizzes, and in-class instant messaging over XMPP.

Key features

  • 01Course content written in YAML and Markdown and versioned with git.
  • 02Code questions with syntax-highlighted input, sandboxed execution and automatic grading.
  • 03Optional second-stage human grading for code questions.
  • 04Flexible rules for participation, access and grading.
  • 05Multiple courses hosted on one installation.
  • 06Class calendar, grade book and answer statistics.

Use cases

  • Instructors running programming courses that need auto-graded code exercises.
  • Universities or training providers hosting several courses on a self-managed server.
  • Teachers running live quizzes during class sessions.
  • Course teams who want to author content in git and preview changes before students see them.

Quick start

  1. 1

    Follow the installation guide linked in the README

Things to know

  • The license is not automatically detected, though the README includes MIT-style license text.
  • It is a web platform that must be self-hosted, so setup requires server administration effort.

In collections

Topics

#education#learning-management-system#python#django#code-grading#quiz#course-management#web-application#code-homework#code-question

FAQ

What is relate?
A web-based courseware platform for running courses, with YAML/Markdown content, git-versioned material, and sandboxed auto-graded code questions. RELATE (Environment for Learning And TEaching) is a web-based courseware package for instructors who want to host courses on their own server. Course content is written in a simple text format built on YAML and Markdown, and it is versioned through git so instructors can preview newly authored material while students continue working with an earlier version on the same instance.
Is relate free to use? What license does it have?
relate is open source under the Other license. Check the license terms before using it in commercial products.
Is relate still maintained?
Actively maintained. The last commit to relate was on Nov 6, 2026.
What can I use relate for?
Instructors running programming courses that need auto-graded code exercises. Universities or training providers hosting several courses on a self-managed server. Teachers running live quizzes during class sessions. Course teams who want to author content in git and preview changes before students see them.
How do I install relate?
Follow the installation guide linked in the README
Where can I get relate?
The source code and installation instructions are on GitHub: https://github.com/inducer/relate

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects