Skip to main content Link Search Menu Expand Document (external link)

To start building your quest, you can use the quest template. Just click Use this template.

Quest Structure

Every uploaded quest must have the following components:

  • A file called quest.yml that configures the metadata of the quest
  • An assets folder with cover image → Assets
  • A steps folder with a yaml file for each step → Steps

In addition, a tests folder can be added with test files to be used by the steps. → Tests

quest.zip
├── quest.yml
│
├── assets
│   ├── cover.jpeg
├── steps
│   ├── <step_id_1>.yml
│   ├── <step_id_2>.yml
│   ├── ...
│   └── <step_id_n>.yml
└── tests
    ├── <test_file_name_1>
    ├── <test_file_name_2>
    ├── ...
    └── <test_file_name_n>

quest.yml

This is a mandatory file that must be placed at the root of the zip archive’s structure. This file defines the metadata of the quest:

id*: a unique quest identifier. Should not change. 3-50 characters, must begin with a letter. Accepted characters are A-Z, a-z, 0-9, and "_" | mandatory
title*: Quest title. 2-40 characters. All characters are accepted. "Funnel Drop" in the example below | mandatory
subtitle*: Quest subtitle. 2-68 characters. All characters are accepted. "Find the cause of user traffic drop in production and fix it" in the example below | mandatory
description*: Quest description. All characters are accepted. "What's worse.." in the example below | mandatory 
summary*: Quest summary. Shown when users finish the quest | mandatory 
level*: Quest level. beginner/intermediate/advanced | mandatory
duration*: Estimated number of hours required to finish the quest | mandatory
repository: The user's repo will be initialized to this repository when a quest starts. e.g. https://github.com/trywilco/Anythink-Market-Public | optional
resources: A list of resources that should be available to the user when the quest begins | optional 
- resource_1
- resource_2
- ...
- resource_n
steps*: List of all quest step ids | mandatory
- step_id_1
- step_id_2
- ...
- step_id_n
skills*: List of skills the user will work on when playing the quest | mandatory
- skill_1
- skill_2
- ...
- skill_n
questDependency: Quest that must be completed before playing this quest | optional
frameworks: Frameworks this quest will be available in | optional
  backend:
  - python
  - node
  frontend:
  - react
sidebarTools: A list of links to a tool that will be displayed on Snack(our chat) sidebar | optional
  - name: tool 1 
    link: https://tool1.com
  - name: tool 2
    link: https://tool2.com

Start Repository

Supported Skills

Quest Resources

Sidebar tools


Table of contents