Skip to content

Commit c135bb1

Browse files
committed
init
0 parents commit c135bb1

File tree

2 files changed

+96
-0
lines changed

2 files changed

+96
-0
lines changed

TUTORIAL.md

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# Insert Tutorial's Title here
2+
3+
Short description to be shown as a tutorial's subtitle
4+
5+
## L1 Put Level's title here
6+
7+
> Level's summary: a short description of the level's content in one line.
8+
9+
The level is identified and distributed following the regex:
10+
11+
```js
12+
/^(##\s(?<levelId>L\d+)\s(?<levelTitle>.*)\n*(>\s*(?<levelSummary>.*))?\n+(?<levelContent>[^]*))/;
13+
```
14+
15+
The Level can be split into steps or have no steps. Levels without steps are meant to be used as only informative content, for example: use a Level without steps at the end of the tutorial to congratulate the student and provide some additional related resources.
16+
17+
Tutorial's content. It can span through multiple paragraphs and use headers `####` and `#####`.
18+
19+
Steps are identified and their content described using the following regex:
20+
21+
```js
22+
/^(###\s(?<stepId>(?<levelId>L\d+)S\d+)\s(?<stepTitle>.*)\n+(?<stepContent>[^]*))/;
23+
```
24+
25+
The numbers identifying the levels and steps are irrelevant but keep in mind that they will be executed in order. A level with id `10` will be executed before another one with id `20` and so on. These `ids` should have a match in the configuration file (`coderoad.yaml`).
26+
27+
### L1S1 A step title (not being shown on the extension at this moment)
28+
29+
Short description of the step's purpose. Should be short and fit in one line
30+
31+
**Important**
32+
33+
1. Both level and step ids must have an entry with the same id on the configuration file;
34+
2. Step Ids are based on its level id. Any step from level `L234` must start with `L234S`, followed by the sequential digits.

coderoad.yaml

+62
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# A configuration file for a CodeRoad Tutorial
2+
# This is a YAML-formatted file.
3+
## Your personal version of the tutorial
4+
##
5+
version: "0.1.0"
6+
## Data used to configure and setup the tutorial
7+
##
8+
config:
9+
## Test runner setup.
10+
testRunner:
11+
## The command called to run the test runner. For example "npm run test", or a path to the test runner binary. Required.
12+
command: python
13+
## Standard arguments used by a given test runner
14+
args:
15+
## The command arg used to convert test runner output to TAP format. See https://testanything.org/ for more. Required.
16+
tap: -m tap.py
17+
## The directory where to run the test runner from. If not specified, tests will run from the root of the project. Optional.
18+
directory: tests
19+
## Commits to load to setup the test runner. Optional.
20+
##
21+
setup:
22+
# - commit1
23+
# - commit2
24+
## A list of commands to run to configure the tutorial
25+
commands:
26+
[]
27+
# - npm install
28+
## App versions helps to ensure compatability with the Extension
29+
appVersions:
30+
## Ensure compatability with a minimal VSCode CodeRoad version
31+
vscode: ">=0.7.2"
32+
## Repo information to load code from
33+
##
34+
repo:
35+
## The uri path to the repo containing the code commits. Required.
36+
##
37+
uri: ""
38+
## The branch on the repo uri that contains the code commits. Required.
39+
branch: ""
40+
41+
## A list of tutorial dependencies to ensure the environment is setup for the tutorial. Optional.
42+
## The dependencies will be checked by running `dependency.name` --version and comparing it to the version provided.
43+
##
44+
dependencies:
45+
[]
46+
## The name of the dependency
47+
# - name: node
48+
# ## The version requirement. See https://github.com/npm/node-semver for options.
49+
# version: '>=10'
50+
51+
## A level is made up of
52+
levels:
53+
- id: L1
54+
steps:
55+
## Example 1: Opening files
56+
- id: L1S1
57+
## Setup for the first task. Required.
58+
setup:
59+
## Solution for the first task. Required.
60+
solution:
61+
62+

0 commit comments

Comments
 (0)
close