https://github.com/dugit-app/dugit
GitHub Classroom tools for Drury University
https://github.com/dugit-app/dugit
cli command-line github github-classroom javascript nodejs typescript
Last synced: about 1 year ago
JSON representation
GitHub Classroom tools for Drury University
- Host: GitHub
- URL: https://github.com/dugit-app/dugit
- Owner: dugit-app
- License: gpl-3.0
- Created: 2024-08-06T00:21:38.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2025-03-31T14:13:17.000Z (about 1 year ago)
- Last Synced: 2025-03-31T15:34:03.267Z (about 1 year ago)
- Topics: cli, command-line, github, github-classroom, javascript, nodejs, typescript
- Language: TypeScript
- Homepage:
- Size: 676 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Dugit
GitHub Classroom tools for Drury University.
[](https://npmjs.org/package/dugit)
## Installation
- Install [Node.js](https://nodejs.org/en/download)
- Install Dugit with `npm install -g dugit`
- Install the [Dugit GitHub App](https://github.com/apps/dugit-app/installations/select_target) on each organization
that Dugit will be used for
## Usage
The primary purpose of Dugit is to allow teaching assistants to anonymously grade GitHub Classroom assignments.
The typical workflow of Dugit is as follows:
- Run Dugit in a terminal with: `dugit`
- Add teaching assistants to a classroom: `Manage graders > Add grader`
- To maintain the anonymity of students, teaching assistants should not be given admin access to the classroom
organization
- Add a new grade for an assignment: `Manage grades > Add grade`
- Each GitHub Classroom assignment can have multiple grades if needed
- Adding a grade will generate anonymous copies of each student's repository for the assignment
- Each anonymous repository is given a memorable randomized name
- The teaching assistants added to the classroom will automatically be given access to the anonymous repositories
- Each student will automatically be given access to only their own anonymous repository
- A repository for the instructor will be generated that maps each student's name to their anonymous name and links
to the original and anonymous repositories
- A repository for the teaching assistants will be generated that only has the anonymous names and links to the
anonymous repositories
- The teaching assistants can then record grades for each anonymous name and give the grades to the instructor
- The instructor can then record grades for each student by using the instructor repository to map between the
anonymous names and the student names
- After grades are recorded, the anonymous repositories can be deleted: `Manage grades > Remove grade`
- You can hide classrooms from showing up when managing grades and graders: `Settings > Hide Classrooms`
- An additional feature of Dugit allows organization repositories to be easily deleted:
`Settings > Manage repositories > Select repositories to delete`
- This usage guide can be opened with: `Help`
## Development
- Install [Node.js](https://nodejs.org/en/download)
- Clone this repository with `git clone https://github.com/dugit-app/dugit`
- Install dependencies with `npm install`