trak done
Marks a curriculum module as completed in trak.json, updates completion metrics, and points to your next exercise.
Command Overview
Supports smart prefix matching ('trak done 00', 'trak done 1'), keyword search ('trak done runtime'), and full folder names ('trak done 00-setup-and-prerequisites'). Essential for hands-on architectural laboratory tracks (Docker, Kubernetes, AWS, PostgreSQL, Linux, Git) that do not have automated compilers. Aliases include 'trak complete' and 'trak mark'.
Smart Module Resolution (No Full Names Required)
Prefix & Fuzzy MatchingTyping or copying full folder names like 00-setup-toolchain-and-first-program is completely optional. Trak CLI automatically resolves module targets through 4 multi-tier matching rules:
Type unpadded numbers or numeric prefixes. Trak normalizes leading zeros and trailing hyphens.
Terminal tab-completion with relative paths and trailing slashes (.\ or /) is cleanly sanitized.
Type any distinct keyword or topic from the module name. Case-insensitive substring matching.
test), Trak stops execution safely, displays all matching module candidates in your terminal, and prompts you to specify.Execution Lifecycle
Available Flags
Show done command help.
Usage Examples
Marks Module 00 as complete using numeric prefix.
Automatically matches 01-runtime-and-escape-analysis.
Marks Module 00 using prefix notation with trailing hyphen.
Marks Module 02 as complete using the complete alias.
Matches module containing 'goroutines' in its name without typing full path.
Trak automatically cleans trailing slashes and relative path dots.
Important Technical Guidelines
You do not need to type the full module folder name. You can pass '00', '00-', '1', a unique keyword (e.g. 'docker', 'runtime'), or tab-complete the relative path (.\00-setup*\). Trak normalizes and resolves the target automatically.
While language tracks can be completed automatically via 'trak verify', architectural tracks (Docker, AWS, PostgreSQL, Linux, Kubernetes) rely on 'trak done <module>' once you finish the hands-on commands in the module README.