- Notifications
You must be signed in to change notification settings - Fork2
CLI for CodeRoad tutorial creation
License
coderoad/coderoad-cli
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Command line interface forCodeRoad.
Use CodeRoad CLI to set up and build a tutorial configuration file.
npm install -g @coderoad/cli
Create templates files for building a new tutorial.
coderoad create
Templates for specific coding languages to come.
Build the configuration file to be used by the extension to run the tutorial.
coderoad build
Defaults assume:
- a
TUTORIAL.md
markdown file (change with--markdown OTHER.md
) - a
coderoad.yaml
file (change with--yaml other.yaml
) - an output file of
tutorial.json
(change with--output other.json
)
The configuration file is created by matching thelevel
andstep
ids between theTUTORIAL.md
andcoderoad.yaml
files against git commit messages with the same ids. For example:
TUTORIAL.md
#Tutorial TitleTutorial description.##L1 This is a level with id = 1This level has two steps...###L1S1 First stepThe first step with id L1S1. The Step id should start with the level id.###L1S2 The second stepThe second step...
coderoad.yaml
---levels: -id:L1config:{}steps: -id:L1S1setup:files: -package.jsonwatchers: -package.json -node_modules/expresscommands: -npm installsolution:files: -package.jsoncommands: -npm install -id:L1S2setup:files: -src/server.jscommands: -npm installsolution:files: -src/server.js
... and the commit messages
commit 8e0e3a42ae565050181fdb68298114df21467a74 (HEAD -> v2, origin/v2)Author: creator <author@email.com>Date: Sun May 3 16:16:01 2020 -0700 L1S1Q setup step 1 for level 1commit 9499611fc9b311040dcabaf2d98439fc0c356cc9Author: creator <author@email.com>Date: Sun May 3 16:13:37 2020 -0700 L1S2A checkout solution for level 1, step 2commit c5c62041282579b495d3589b2eb1fdda2bcd7155Author: creator <author@email.com>Date: Sun May 3 16:11:42 2020 -0700 L1S2Q setup level 1, step 2
Note that the stepL1S2
has two commits, one with the suffixQ
and another one withA
. The suffixes meanQuestion
andAnswer
, respectively, and refer to the unit tests and the commit that makes them pass.
Steps defined as questions arerequired as they are meant to set the task to be executed by the student. The answer is optional and should be used when a commit must be loaded to verify the student's solution.
If there are multiple commits for a level or step, they are captured in order.
About
CLI for CodeRoad tutorial creation
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors4
Uh oh!
There was an error while loading.Please reload this page.