Python (version ≥ 3.7) and ability to run
python command in terminal.
Running the Builder
- Clone Git repository of the course, you would like to edit.
build.batscript in the course directory.
- Edit course materials in the
The script would initialize a Python virtual environment for the course, install or update the Builder and all its dependencies, and run it in the auto mode — watching changes in the course source files and rebuild them when needed. The Python environment is placed into the
pyvenv directory inside the course root directory. The Builder executable itself is
pyvenv/bin/it4kt-builder (on Unix) or
pyvenv\Scripts\it4kt-builder (on Windows).
Build scripts try to update the Builder on each run. By default, they install the latest version of the Builder, but you can specify specific version in the
Structure of the course
All course content is placed in the
content directory. The content is formed by pages that are organized into folders. Folder is a collection of pages of the same type and it is represented by the subdirectory of the
content directory. Examples of the folders may be Lectures, Practices, Assignments, etc.
All folders need to be listed in the configuration file
it4kt.yml. For example:
- path: lectures
- path: labs
- path: assignments
Each folder you need to define its filesystem path and a title to be displayed in the course menu. You can also specify type of pages contained in the folder:
- page (default) — generic page without a specific structure
- scenario — scenario of practices divided into steps
Pages can be written either in Markdown format or XML.
If you would not specify title of the folder it would not show up in the menu, but still would be converted to the output. This is useful for some additional Markdown pages.
lecturer directory in the
content or in any folder would be copied only into lecturer version of the course. You can use it for files that should not be accessible for students, like solutions of exercises.