Getting Started
To setup development environment for contributing to IT4KT Builder you need to perform these steps (commands may be different depending on your operating system):
-
Create virtual environment, activate it and install dependencies of the it4kt-builder:
python -m venv venv source venv/bin/activate pip install -r requirements.txt
-
Build themes using
make themes
or directly executing commands specified by the Makefile for targetthemes
.
To run tests, just use pytest
command in the root of the project.
Architecture decisions
Important decisions and concepts of the IT4KT Builder are documented using Architecture Decision Records (ADR). The concept of ADR is described in the article Documenting Architecture Decisions by Michael Nygard.
Accepted ADRs
- ADR 1: Model — how the Builder works
- ADR 2: Themes without XSLT — how themes work
- ADR 3: Folders — how the content is structured into folders
- ADR 4: URLs mirroring paths in source directory
- ADR 5: Environment
- ADR 7: GitLab CI as build server
- ADR 8: Auto-updating build scripts
- ADR 9: Markdown
- ADR 10: Tracking weeks
- ADR 11: Content directory
- ADR 12: Declarative configuration
- ADR 13: Virtualized Filesystem
- ADR 14: Localization
- ADR 15: Declarative Kpimark validation
Deprecated and superseded ADRs
Themes
Structure of the generated HTML
Generated HTML uses the BEM naming convention with two dashes for modifiers. The main blocks are the following:
- section — main element of the page structure,
- step — step of the scenario
- special blocks inside the content
- task
- lecturer — note visible only by lecturer
- admonition — notes and warnings for students
Structure of the blocks and examples are in the reference HTML page.