We use cookies to run the site, and (only with your permission) to understand usage with analytics.Read our Privacy Policy.

Analytics is off until you accept.
Tutorials

Getting Started: Creating an Assignment

Lab.Computer Team7 minutes

Assignments are where students actually do the work — each one spins up a real, isolated compute environment (a Jupyter-style notebook server) that a student launches, works in, and submits from. As with courses, an assignment can be built by hand on Lab.Computer, or it can arrive already wired up the moment an instructor launches it from Canvas. This guide walks through building one from scratch, then covers what changes when Canvas is doing the launching.

Path 1: Standalone

Starting a new assignment

From inside a course, open the Assignments tab and click + Create Assignment. Assignment creation is a three-step wizard — Basic Details, Hardware, and Timeout — and you'll move through all three before the assignment is saved.

Step 1: Basic Details

Blog image

Step 2: Hardware

Pick the compute tier the assignment needs. Lab.Computer currently offers three resource types:

A disk storage slider (1024–2048 MB) sets how much local disk each student's environment gets. Choose the smallest tier that comfortably fits the assignment — it keeps servers starting quickly and keeps costs down.

Step 3: Timeout

Timeout settings control how aggressively idle servers get shut down, and how long the assignment stays open overall:

Finish the wizard and the assignment appears in the course's Assignments table, showing its name, start and due dates, score, status (starts as Draft), and submission count, alongside a play/stop toggle, an Open button, and a 3-dot menu (Edit / Duplicate / Delete).

Building the notebook

Click Open on the assignment, then Start Server to launch the authoring environment — a full JupyterLab-style workspace with a file browser, kernel launcher (Python 3, C++, Java, Julia, and more), and the usual File/Edit/View/Run/Kernel menus, plus Stop / Save / Draft / Generate controls.

Blog image

Build the assignment as a notebook, cell by cell. Every cell carries a small row of toggles above it:

Blog image
ℹ️

Auto-graded cells are checked automatically against expected output when a student submits. Manual cells are scored later by the instructor from the Submissions view — see the next article in this series for that workflow.

Use Save to checkpoint your work, Draft to keep the assignment hidden from students while you keep editing, and Generate to produce the student-facing version once you're satisfied with the notebook.

Building faster with the AI Assistant

The same notebook editor has an AI Assistant panel — click the AI Assistant tab on the right edge of the screen to open it. It opens with a set of one-click starting points: create a new notebook on a topic, explain what the current notebook does, run it and find and fix bugs, summarize its key steps, suggest improvements for the current cell, turn a PDF into an assignment, generate an illustrative image, add an MCQ question below a cell, produce an SVG diagram, or generate a new assessment question on a given topic. You can also just type a request of your own into the box at the bottom.

Blog image

It's a real, working assistant rather than a canned prompt box — asking it to explain an existing notebook has it actually open and read the file, then answer from what's there. Asked about the MySQL Querying assignment used throughout this series, it read the notebook end to end and returned a section-by-section breakdown: the setup cell, each concept-demo-problem block, the auto-graded tests, and a closing summary of what the assignment covers — a fast way to sanity-check a notebook you're building, or get oriented in one someone else authored.

Blog image
ℹ️

Each response shows its token usage (prompt / completion / total) and, when it reads files or inspects the notebook, the tool calls it made to do so — worth keeping an eye on for longer notebooks or repeated requests.

Releasing, editing, and removing assignments

An assignment stays in Draft status until its start date, or until you explicitly make it available — students only see assignments that are live. From the 3-dot menu on the Assignments table you can Edit an assignment's details at any time, Duplicate it as a starting point for a similar one, or Delete it if it's no longer needed.

Path 2: Through Canvas (LMS)

When an assignment is launched through Canvas via LTI, Lab.Computer automatically creates the matching assignment record and links it to the Canvas gradebook column the instructor set up — the notebook itself is still authored the same way described above. See Canvas Assignment Setup and Launch for how an instructor configures the Canvas-side External Tool link and launch settings.

⚠️

The Hardware and Timeout steps, and the notebook cell mechanics (Read only / Solution / Points), are identical whether the assignment was created standalone or first launched from Canvas — the LTI launch only changes how the assignment gets linked to a course and gradebook (and pre-fills the assignment name), not how the rest is built.

For a real walkthrough of exactly what arrives pre-filled after a Canvas launch and what you still need to configure — using an actual synced assignment, screenshots included — see Canvas Assignment Setup and Launch: Finishing the assignment after sync.

What's next

Once students start submitting work, you'll want to review and score it — that's covered in the final article in this series, on grading assignments.

getting startedassignmentscourse content