Skip to main content
Creating Assignments

Adding external libraries to your assignment

Configure supported external libraries or upload a root dependency manifest so sandbox validation and GitHub Actions use the same contract.

Written By Alan Gandy

Last updated About 2 hours ago

CodeTeach.app Dependencies panel on the New Assignment screen, including Add custom library (advanced).

Assignments that use external libraries need an explicit installation contract. CodeTeach uses the same supported dependency definition during sandbox validation and in the generated GitHub workflow.

Check the Dependencies panel

For supported languages, CodeTeach detects known imports or includes. Reviewed mappings resolve automatically; unresolved libraries need configuration. Choose Configure on an unknown library or Add custom library (advanced) when you know the dependency in advance. Verify package names and linker flags rather than accepting guesses.

Use a supported root manifest

  • Python or Jupyter Python: requirements.txt

  • JavaScript or TypeScript: package.json, optionally package-lock.json

  • Ruby: Gemfile, optionally Gemfile.lock

  • Go: go.mod, optionally go.sum

  • Rust: Cargo.toml, optionally Cargo.lock

  • Java: pom.xml

  • C or C++: supported header mappings or explicit apt package and linker flags

SQL has no external package mechanism. Unsupported tools, nested multi-project manifests, local or Git dependencies, custom registries, and ambiguous source imports are rejected with an actionable error rather than silently ignored. Uploaded instructor manifests remain authoritative and are not replaced by generated fallbacks.

Resolve every dependency warning before generation or validation. If a dependency cannot be represented through a supported path, use the standard library or adapt the project to a supported manifest.