Skip to main content
Getting Started

Setting up GitHub for CodeTeach

Install the CodeTeach GitHub App on the account or organization where you want private assignment template repos created.

Written By Alan Gandy

Last updated About 3 hours ago

You need one GitHub-side setup step before CodeTeach can deploy assignments:

  1. Choose the GitHub account or organization that will own the instructor template repos.

  2. Install the CodeTeach GitHub App there.

GitHub Classroom is no longer required for the CodeTeach workflow.

Choose where templates should live

You can deploy to:

  • Your personal GitHub account

  • A course GitHub organization

  • A department or school GitHub organization

A course org is cleaner if you manage many students, but a personal account works if you are using CodeTeach as a lean generator and manually creating private student repos.

Install the CodeTeach App

You'll hit the install screen the first time you try to deploy an assignment. CodeTeach detects the App isn't installed yet and shows an Install GitHub App button on the Deploy step.

Click it, choose the account or org where assignment template repos should live, and approve the installation. After GitHub redirects you back to CodeTeach, that target appears in the Deploy dropdown.

What permissions the App requests

The App requests the permissions needed to create and validate assignment repos:

  • Administration — create repos and mark them as templates

  • Contents — push starter code, instructions, workflow files, and instructor validation branches

  • Actions — configure and read GitHub Actions autograding runs

  • Checks — read autograder results back into the wizard

  • Pull requests — support instructor feedback workflows if you use them manually

You can review or revoke the installation from GitHub's app settings at any time.

Student privacy

Keep the CodeTeach App installation limited to the instructor-owned template and solution repositories CodeTeach uses. Do not grant the App access to student-submission repositories. Keep the template private and instructor-only; students should receive separate private repos created with Include all branches unchecked.

Under that installation boundary, CodeTeach does not need access to student submissions, rosters, or grades. Repository owners remain responsible for verifying the installation's selected-repository scope in GitHub.

Where to go next

  • Ready to make your first assignment? Read Picking a generation mode.

  • Deploy succeeded? Read Creating student repositories after deploy.

  • Need a course org? Create one at github.com/organizations/new and install the CodeTeach App on it.