Stage Types

Code Stage

This is the bread and butter stage for ChainShot. It has some text documentation and a Code Editor which can flip between many files.

The user will need to pass all test cases for the testFixture in order to move onto the next stage.

Along with all the fields mentioned for Stages, here are the Code Stage fields:


Field Description
language The execution environment in which the code is run
languageVersion The version of the execution environment where the code is run
testFramework The test framework that is used to execute the test cases
abiValidations See ABI Validations
validatedContract The contract that is validated with the abi validations

Download Stage

This stage is the primary ending point for Building Blocks. Since Building Block tutorials are based around a project, the download stage allows the user to download all of their code into Project Skeletons.

Along with all the fields mentioned for Stages, here are the Download Stage fields:


Field Description
projectSkeletons An embedded array of Project Skeletons

Video Stage

A stage that renders with an embedded video that can teach concepts that require more of a visual or audio perspective.


Field Description
youtubeId YouTube ID for the video (found on the URL, i.e. ?v=ID)

IFrame Stage

A Stage that which will embed an IFrame that can point at another site. This is used for stages that want to show some kind of visualization or other UI that cannot be created from the other Stage Types.


Currently the site needs to be whitelisted before it can be rendered. In the future this may change to a UI that clearly shows the user is working on another site.


Field Description
src The URL to render in the IFrame