---
title: "Create a NodeSchool Workshop"
description: "Building interactive NodeSchool workshops with adventure-runner. Practical notes and code examples on Create a NodeSchool."
url: "https://h3manth.com/scribe/create-a-nodeschool-workshop/"
canonical_url: "https://h3manth.com/scribe/create-a-nodeschool-workshop/"
markdown_url: "https://h3manth.com/scribe/blog/create-a-nodeschool-workshop.md"
publishDate: "2015-05-23T00:00:00.000Z"
author: "Hemanth HM"
category: "node"
tags: ["node","nodeschool"]
word_count: 95
reading_time_minutes: 1
x_markdown_tokens: 282
content_signal: "ai-train=yes, search=yes, ai-input=yes"
---

# Create a NodeSchool Workshop

> Building interactive NodeSchool workshops with adventure-runner. Practical notes and code examples on Create a NodeSchool.

For international [NodeSchool](http://nodeschool.io) day, here's how to create a workshop using [adventure-runner](http://npm.im/adventure-runner).

## Setup

npm install --save adventure-runner

## Structure

- `runner.js` - The brain of the workshop
- `problems/` - Where all problems are located
- `package.json` - Like any other module

## runner.js

```javascript
var runner = require('adventure-runner');
runner('math-adventure', './problems');

## Problem Definition
javascript
// problems/addition/index.js
exports.problem = 'Write a program that adds two numbers...';

exports.verify = function(args, cb) {
  var proposed = require(process.cwd() + '/' + args[0]);
  if (proposed(3, 4) == 7) {
    console.log("You have solved it!");
    return cb(true);
  }
};
```
