CS30 Documentation

A proctored online coding-lab platform for university CS courses. Students log in with Google, open a lab problem in an editor, run their code against sample tests, and submit for automatic grading. Code runs inside a locked-down Docker sandbox, and a proctoring layer records activity during exams.

Internal docs External docs

Where to go

Architecture

The whole system on one page, then each component, request flow, and the data model.

Deployment

How the jar reaches the server, the release layout, and the operational runbook.

CI/CD

What the GitHub Actions pipeline builds, checks, and deploys.

Local setup

Prerequisites and how to build and run each module on your own machine.

API reference

Every HTTP endpoint the backend exposes, with request and response shapes.

Running a course

The instructor workflow: define a course in YAML, load it, and manage it.

The two sections

Internal is for the team building and running CS30: architecture, deployment, CI/CD, development workflow, and operations.

External is for instructors, TAs, and outside contributors: getting started, course setup, the command reference, and how to contribute.