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:

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:

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.

Note

This type is not editable through the Builder UI as it is currently under development. In the future, videos can be recorded from within the Builder UI.

Fields

Field Description
contentId Video content ID
duration Video time in milliseconds

UI Stage

A flexible stage that can be rendered with particular React elements. Generally this stage is used to teach particular concepts that aren’t covered with the other stage types.

Note

This type is not editable through the Builder UI as it is currently under development. In the future, this stage type may be split out into several more specific stage types.

Fields

Field Description
componentName The specific component that this stage will render as
configuration A loose JSON object that configures the component