Creating a Workshop
This guide explains how to create and configure workshops using the JSON format.
Workshop Structure
Workshops consist of two main parts:
- Settings - Global configuration for the workshop
- Nodes - Individual activities and content elements
Basic Structure
{
"settings": {
// Workshop configuration goes here
},
"nodes": [
// Array of workshop activities goes here
]
}
Settings Configuration
The settings object configures global workshop properties:
{
"settings": {
"name": "Workshop Title",
"hostAsPresenter": true,
"removeLobby": true,
"showTimer": true,
"useChat": true,
"darkText": false,
"background": "",
"team": []
}
}
Available Settings
| Property | Type | Description | Optional? |
|---|---|---|---|
name | string | Workshop title displayed to participants | 𐄂 |
hostAsPresenter | boolean | Whether the host controls the flow | 𐄂 |
removeLobby | boolean | Skip the lobby and start directly | ✓ |
showTimer | boolean | Display countdown timers | ✓ |
useChat | boolean | Enable chat functionality | ✓ |
darkText | boolean | Use dark text color | ✓ |
background | string | Background image or color | ✓ |
team | array | Team member information | ✓ |
Team Configuration
"team": [
{
"name": "Max",
"img": "techagogics-Max.png",
"show": true
}
]
Node Types
Nodes are the building blocks of your workshop. Each node has a type and associated data. For specific nodes and their structure, checkout the node types.
Sound Configuration
Add sound effects to any node:
"sound": {
"url": "/sound/plop.wav",
"volume": 0.5,
"repeat": false
}
Content Formatting
Images
In content arrays or standalone:
"content": ["img(filename.jpg)", "img(another.png)"]
With captions:
"content": ["img(photo.jpg) Photo by Author Name"]
Multiple Content Items
"content": [
"img(image1.jpg)",
"img(image2.png)",
"Text content can also be included"
]
Complete Example
{
"settings": {
"name": "My First Workshop",
"hostAsPresenter": true,
"removeLobby": true,
"showTimer": true
},
"nodes": [
{
"type": "Slide",
"data": {
"headline": "Welcome!",
"text": "Let's get started"
}
},
{
"type": "Countdown",
"autoNext": 5
},
{
"type": "Quiz",
"data": {
"text": "What color is the sky?",
"options": ["Red", "Blue", "Green"],
"answer": [2],
"answerTime": 30,
"showScoreboard": true
}
},
{
"type": "Scoreboard",
"data": {
"showPodium": true
}
},
{
"type": "End"
}
]
}
Best Practices
- Start with a welcome slide to introduce the workshop
- Use countdowns between major sections for smooth transitions
- Add presenter notes in
hostdatafor important talking points - Test quiz timing - ensure
answerTimeis appropriate for question difficulty - End with a scoreboard if using quizzes to celebrate participants
- Always include an End node to properly conclude the workshop
Tips
- Use
removeLobby: truefor seamless start in formal presentations - Add
backgroundcolors/images to slides for visual variety - Include
hostdata.noteswith key points and discussion questions - For image quizzes, use objects in
options:[{"imageUrl": "pic.jpg"}]