Loading Exam Creator...
0 = kein IDK, Zahl = max. Anzahl IDK-Boxen
PASSING_POINTS = TOTAL_POINTS × %
Use 'X' as a placeholder for the task number. Only letters, numbers, dashes, and spaces allowed.
Warning: This task title will display as a duplicate of another task.
This task has subtask(s) with a total of points.
No blocks in this section. Click "Edit" to add content.
This section contains block(s).
No blocks in this subtask. Click "Edit" to add content.
block(s)
These comments are specific to this task and separate from global internal comments.
Warning: This ID must be unique within the task.
Warning: This ID is already used in another task.
No validation issues found!
Resource Manager
Drag files here or
Resources are files displayed directly in task descriptions — embed images inline or create download links that students can open in the browser.
To use a resource in a task, add a Resource Block via the "Add Block" menu in the subtask editor.
No resources uploaded yet.
| Filename | Size | Aux | Used | Actions | |
|---|---|---|---|---|---|
|
|
ZIP |
|
Aux-File Manager
Drag files or a ZIP archive here, or
Upload individual files or a ZIP archive containing an "aux-files" folder.
ZIP mode manages aux-files exclusively: the ZIP must contain a single top-level
aux-files/ folder with all files inside. When a ZIP is uploaded, individual aux-file uploads
and "copy to aux-files" on resources are disabled. You can switch back by deleting the ZIP
and uploading individual files.
Aux-files are placed in the ~/exam-files/ directory on student laptops. They cannot be opened from tasks directly — students work with them using local applications (e.g. R Studio, VS Code, a terminal).
To reference aux-files in a task, use the Aux dropdown and the Info button in the text block toolbar.
— (showing top-level only; files total)
The authoring tool for psi-exam, developed at the Chair of Privacy and Security in Information Systems, University of Bamberg.
Your data stays local. Everything happens in your browser — no exam data is sent to any server. All exam data is stored in your browser's Local Storage. There is no server-side copy. You can disconnect from the network after loading and continue working offline.
Important: Browser data can be lost when you clear your browsing history or site data. Always export your exam after making changes to keep a safe copy. You can also use "Scrub Datastore" (top bar) to deliberately delete all exam data from the browser — this cannot be undone.
The typical workflow for creating an exam:
The coversheet supports Markdown and HTML. Use template placeholders that are replaced automatically on export:
{{ exam.name }} — exam name{{ exam.date }} — exam dateTOTAL_POINTS — sum of all subtask pointsPASSING_POINTS — calculated from total points × passing percentageThese placeholders are available via quick-insert buttons in the coversheet editor toolbar.
There are two export scopes:
Import works the same way:
Tasks are the top-level grouping in an exam. Each task can contain subtasks and sections.
Subtasks contain blocks with input fields where students enter their answers. Each subtask has a points value that contributes to the total exam points.
Sections are for content without input fields — shared intro text, images, or instructions that apply to multiple subtasks. Sections can contain text blocks, resource blocks, and external code blocks, but not input fields.
Subtasks can offer an "I don't know" (IDK) button. Students can indicate they don't know the answer instead of guessing. The exam-wide IDK Limit in the metadata controls how many times a student may use this option. Set the limit to 0 to disable the feature entirely.
If IDK is enabled globally, you can disable it for individual subtasks using the override button on the subtask.
If a subtask uses a paper input type, it means the answer is collected on physical paper. The input field won't appear in the student view — it is only used during grading.
For each subtask you can record expected solutions. These are not included in the exam
shown to students — they are placed in an internal subdirectory that is not copied to the exam laptops.
Use them to document correct answers for grading.
Feedback blocks let you give students live feedback during the exam. Link a feedback block to an input field and fill in the "Solution for Feedback" field with the correct answer(s). The system will then tell students whether their input is correct. This is optional — you don't have to use feedback blocks.
Each subtask has an optional references field. This is not shown to students — it is included in the grading materials only, for the examiner's reference.
There is an internal comments field for each task and one for the whole exam (in the sidebar). These are useful for collaborative exam creation — leave notes for co-authors, mark tasks that need review, etc. Internal comments are never exported to the student exam.
Blocks are the building elements inside subtasks and sections. Available block types:
Rich content using Markdown. Supports standard formatting, lists, tables, code blocks, and inline HTML.
Fields where students enter answers. Input types:
Each input field can have a label, placeholder, and expected solution.
Embeds a file from the resource library into the task. Images are shown inline; other files appear as download links. Resources can be configured as image or download type.
Displays a code file with syntax highlighting. Specify the filename and language for proper highlighting.
Provides live feedback to students during the exam. A feedback block is linked to an input field in the same subtask. Fill in the "Solution for Feedback" field on the input block with the correct answer(s), then configure the feedback text. The student sees whether their input is correct while working on the exam. Only available in subtasks. This is optional — not every input field needs a feedback block.
Math expressions are supported in text block descriptions and other fields via KaTeX.
Use $...$ for inline math and $$...$$ for display math.
Resources are files displayed within task descriptions — images shown inline, other files as download links. Upload files via the resource manager and reference them using resource blocks inside tasks.
Aux-files (auxiliary files) are files available to students on their exam laptop.
During the exam they appear in ~/exam-files (writable) and as a read-only copy
in ~/exam-files-readonly.
You can upload files individually or as a ZIP archive — both are just convenience options for authoring. ZIP contents are always extracted before the exam is exported; students will always see the individual files regardless of how they were uploaded.
Subdirectories: If you need a folder structure inside exam-files,
you must upload a ZIP archive containing that folder structure. There is no other way
to create subdirectories.
Use aux-file template tags in the coversheet or text blocks to reference aux-files by name. The tags ensure that filenames in the rendered exam are always correct and consistent. They are replaced with proper file paths on export.
Click "View All" (top-right) to open a rendered view of all tasks in a new browser tab. This displays all tasks and subtasks together on one page with rendered Markdown and KaTeX formulas, useful for reviewing the complete exam at a glance.
The validation panel checks for common issues before export, such as:
Toggle individual validation checks in the validation settings.
exam/ folder structure containing Jinja2 HTML task templates are automatically detected
and parsed into the internal format.Loading changelog…
Prof. Dr. Dominik Herrmann
Chair of Privacy and Security in Information Systems, University of Bamberg
dh.psi@uni-bamberg.de