github / github/gh-classroom

[API Endpoint Request] Expose classroom and assignment creation and editing endpoints for programmatic automation

Offen
#90 0 Kommentare 6 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
api-request
Vorherrschende Sprache
Go
Sterne
125
Forks
21
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Every semester we have to manually create the GH classroom and all the assignments/labs within the classroom. We typically have about 6/7 assignments, 13 labs, and a group project.

Doing all of this through the GH classroom website is tedious. I'd love to see GH classroom creation for a given GH org, as well as the assignment creation/editing exposed so we can create everything programatically, and also add these commands to the GH classroom extension.
 
## Proposed endpoint

A POST to `/classrooms/create` would create a classroom for a given GH organization with
- GH classroom name

A POST to `classroom/$clasroom_id` would edit an existing classroom

A POST to `classroom/$classroom_id/assignment/create` would create an assignment with:
- assignment name
- assignment prefix
- source repo url
- due date
- etc

A POST to `classroom/$clasroom_id/assignment/$assignment_id` would edit an existing assignment

## Justification

Help with automation especially when there is a need to create many assignments in a course

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne damit, die vorhandenen Command- und API-Einstiegspunkte der GH Classroom extension zu lokalisieren; das Issue nennt keine spezifischen Dateien oder Tests. Verwende die vorgeschlagenen Classroom- und Assignment-Routen als Umfang. Als abgeschlossen gilt die programmgesteuerte Erstellung und Bearbeitung sowie die entsprechenden Extension-Commands für Classrooms und Assignments.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
github, go
Bereich
api, cli
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.