A track consists of many different parts.
The track's configuration and metadata are specified in the config.json
file. It lists the track's exercises, concepts, editor settings, and much more. Checkout the config.json documentation.
All concept and practices exercises of a track involve concepts. These concepts are separate entities by themselves. Check the documentation for more information.
The concepts taught in the track's concept exercises form a syllabus. For more information on how to design a syllabus, check the syllabus documentation.
Tracks have two types of exercises:
Each exercise has an optional Dig Deeper section that can contain:
Some files are not specific to individual exercises, but are instead applicable to all exercises. Check the documentation for more information.
Each track has a couple of required documentation files. Check the documentation for more information.
Some parts of the track can be displayed in widgets.
All documents should adhere to the style guide. Markdown documents should also adhere to our Markdown standards.
csharp ├── config | ├── exercise_readme.go.tmpl | └── maintainers.json ├── docs | ├── ABOUT.md | ├── INSTALLATION.md | ├── LEARNING.md | ├── RESOURCES.md | └── TESTS.md ├── concepts | └── numbers | ├── about.md | ├── introduction.md | └── links.json └── exercises | ├── concept | | └── cars-assemble | | ├── .docs | | | ├── hints.md | | | ├── introduction.md | | | └── instructions.md | | ├── .meta | | | ├── config.json | | | ├── design.md | | | └── Exemplar.cs (track-specific) | | ├── CarsAssemble.cs (track-specific) | | ├── CarsAssemble.csproj (track-specific) | | └── CarsAssembleTests.cs (track-specific) | ├── practice | | └── leap | | └── .docs | | | └── instructions.md | | └── .meta | | | ├── config.json | | | └── Example.cs (track-specific) | | ├── Leap.cs (track-specific) | | ├── Leap.csproj (track-specific) | | └── LeapTests.cs (track-specific) | └── shared | └── .docs | ├── debug.md | ├── help.md | └── tests.md └── [config.json](/docs/building/tracks)