Semestra

Introduction

What these docs cover and how the hosted and self-hosted versions differ.

Semestra is a semester planner for students: programs, terms and courses, grades and GPA, a timetable and calendar, tasks, course files, Canvas integration, and an AI assistant called Sem. The app explains its everyday features itself. These docs cover the advanced topics: running your own instance, connecting AI providers, MCP clients and Canvas, and the HTTP API.

Two ways to run it

HostedSelf-hosted
Who runs itThe Semestra projectYou, with Docker Compose
AIYour own provider keys (BYOK)Your own keys, or one instance-wide provider such as Ollama
Reaching private networksNot allowedAllowed by default (LAN Ollama, an on-premises Canvas)
EmailSent by the servicePrinted to the log until you configure SMTP or Resend

Everything else, including the API and MCP, works the same in both.

Where to start