Skip to content
Automatically graded Java web exercises
Shell Dockerfile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples typos in assignment template Apr 24, 2019

nbgraderutils: Automatically graded Java web exercises

This repository provides scripts and information to offer web-based Java assignments.

It uses Jupyter Notebook for web access and the extension nbgrader for assignments. Additionally, JupyterHub manages multiple users, IJava provides language support, and files are managed by Docker.

If you haven't heard of nbgrader yet, you can watch the video YouTube: nbgrader at SciPy 2017.

Quick start

  1. Install Docker
  2. Download and unpack nbgraderutils
  3. Build Docker image
    sudo docker build -t nbgjava:latest nbgraderutils-master/docker/
    (This takes about 9 minutes.)
  4. Run Docker container
    sudo docker run -t -d -p 8000:8000 --name nbgjava nbgjava:latest
  5. Initialize the system
    sudo ./nbgraderutils-master/scripts/
    (This creates example student accounts nbgtesta, nbgtestb, and nbgtestc. It also copies assignment templates.)
  6. Go ahead
    Open https://localhost:8000/
    Ignore messages like 'Your connection is not private' for now.
    You can use the teacher account nbgadmin, and the student test accounts nbgtesta, nbgtestb, nbgtestc, and nbguser.
    All passwords are nbgpsw. You have to change the passwords for public installations.

The wiki provides detailed descriptions.
There are scripts for an installation on a virtual machine. This variant provides a mounted directory to create backups. It is described on the installation wiki page.


You can’t perform that action at this time.