Assignments
Assign specific training modules to individual users, teams, or your entire organization. Track completion, set deadlines, and enforce mandatory training.
Creating an Assignment
To create a new assignment, navigate to Assignments in the admin sidebar and click "New Assignment". Follow these steps:
1. Content Area
Choose Practice (code review challenges) or Learn (interactive attack scenarios).
2. Target
Select what to assign. The target hierarchy depends on the content area:
- Practice: Category → Module → Topic (e.g. "OWASP Web Top 10 > A03 Injection > SQL Injection")
- Learn: Course → Scenario
3. Assignee
Choose who receives the assignment: an Individual user, a Team, or the Entire Organization.
4. Deadline
Set an optional due date. Users will see overdue assignments highlighted in their dashboard.
5. Mandatory
Flag the assignment as required or optional. Mandatory assignments appear prominently in the user's training queue.
6. Note
Add an optional description or context for the assignment (e.g. "Complete before the Q2 security audit").
Create Assignment Form
Here's what the assignment creation form looks like:
Assignment Targets
You can assign training at different levels of granularity:
| Content Area | Target Level | Example |
|---|---|---|
| Practice | Category | All OWASP Web Top 10 challenges |
| Practice | Module | All A03 Injection challenges |
| Practice | Topic | SQL Injection challenges only |
| Learn | Course | All Web Security scenarios |
| Learn | Scenario | IDOR scenario only |
Tracking Progress
Click on any assignment to view its detail page, which shows:
- Overall completion rate — percentage of assigned users who have completed
- Per-user progress bars — individual progress for each assignee
- Overdue status — highlighted when past the deadline
- Individual scores — challenge scores per user
Assignment Detail
Here's what an assignment detail page looks like:
Editing & Deactivating
You can edit an assignment's deadline, note, and mandatory flag at any time. Changes apply immediately to all assignees.
To remove an assignment without losing data, use Deactivate. Deactivating soft-deletes the assignment — it retains all progress data but hides the assignment from users' dashboards. Deactivated assignments can be reactivated later.