-
Notifications
You must be signed in to change notification settings - Fork 1
Quick Start Content Creation
Last Updated: 2025-01-12 | For: Teachers & Content Creators
Welcome! This guide will help you create your first MoFaCTS lesson in just a few steps.
To create content for students in MoFaCTS, you need two files:
- TDF File (Training/Tutor Definition File) - A JSON file that defines your lesson structure
- Stimulus File - A JSON file containing your questions and answers
π‘ Tip: The easiest way to start is by downloading an example from your server and modifying it!
Log into your MoFaCTS instance and download a demo TDF package. All demo files are free to download from the Content Upload page.
A minimal TDF file looks like this:
{
"setspec": {
"lessonname": "My First Lesson",
"userselect": "true",
"stimulusfile": "my-questions.json"
}
}A minimal stimulus file looks like this:
{
"setspec": {
"clusters": [
{
"stims": [
{
"display": {
"clozeText": "The capital of France is ______."
},
"response": {
"correctResponse": "Paris"
}
}
]
}
]
}
}- Open the example files in a text editor (VS Code, Notepad++, etc.)
- Change the lesson name in the TDF file
- Modify the questions and answers in the stimulus file
- Save both files
- Create a ZIP file containing both your TDF and stimulus file
- Log into MoFaCTS with your teacher/admin account
- Go to Content Upload
- Click Upload Package and select your ZIP file
- Wait for processing to complete
- Go to the main dashboard
- Find your lesson in the list
- Click Start to test it
- Verify your questions appear correctly
TDF (Training/Tutor Definition File) files control how your lesson behaves. They use JSON format and have three main parts:
The setspec section defines lesson-wide settings:
| Field | Required | Description |
|---|---|---|
lessonname |
β Yes | The full name of your lesson |
userselect |
β Yes | Set to "true" to show on the main page |
stimulusfile |
β Yes | Filename of your questions/answers file |
lfparameter |
No | Answer matching strictness (0-1, default 1) |
audioInputEnabled |
No | Enable speech recognition |
enableAudioPromptAndFeedback |
No | Enable text-to-speech |
Example:
{
"setspec": {
"lessonname": "Chapter 1: Introduction",
"userselect": "true",
"stimulusfile": "chapter1.json",
"lfparameter": "0.85"
}
}Units are the building blocks of your lesson. Each unit can be:
- Instructions - Display text with a Continue button
- Learning Session - Adaptive practice with the AI algorithm
- Assessment Session - Fixed quizzes or tests
Simple Instruction Example:
{
"unitname": "Welcome",
"unitinstructions": "<p>Welcome to Chapter 1! Click Continue when ready.</p>"
}Controls how questions are presented and timed.
Common Parameters:
| Parameter | Description | Example Value |
|---|---|---|
drill |
Time limit for answering (ms) |
30000 (30 seconds) |
correctprompt |
How long to show "Correct!" (ms) |
1000 (1 second) |
reviewstudy |
How long to show answer after wrong (ms) |
6000 (6 seconds) |
fontsize |
CSS font size | 3 |
Stimulus files contain your actual questions, answers, and media.
{
"setspec": {
"clusters": [
{
"stims": [ /* questions go here */ ]
}
]
}
}{
"display": {
"clozeText": "The powerhouse of the cell is the ______."
},
"response": {
"correctResponse": "mitochondria"
}
}{
"display": {
"imgSrc": "heart-diagram.jpg"
},
"response": {
"correctResponse": "aorta"
}
}Set buttontrial: "true" in your unit's delivery params, and:
{
"display": {
"text": "What is 2 + 2?"
},
"response": {
"correctResponse": "4",
"responses": ["3", "4", "5", "6"]
}
}"deliveryparams": {
"useSpellingCorrection": "true",
"allowPhoneticMatching": "true",
"lfparameter": "0.85"
}"deliveryparams": {
"drill": "15000",
"reviewstudy": "3000",
"correctprompt": "500"
}"deliveryparams": {
"drill": "0",
"skipstudy": "true",
"correctprompt": "1000"
}Now that you understand the basics:
- Explore Examples - Download and study existing TDFs from your server
-
Read Detailed Docs:
- Full Content Creation Guide - All TDF options
- Learning Sessions - Adaptive learning setup
- Assessment Sessions - Creating tests
- Stimulus Files - Advanced media options
- Test Thoroughly - Always test your lessons before assigning to students
- Get Data - Use Data Output to track student performance
β DO:
- Start simple - get a basic lesson working first
- Test your lessons yourself before assigning
- Use descriptive
unitnamevalues for tracking - Set
userselect: "true"so students can see your lesson - Include clear instructions in your units
β DON'T:
- Don't forget to upload both TDF and stimulus files together
- Don't use special characters in filenames
- Don't set time limits too short (students need time to think!)
- Don't skip the testing phase
"Lesson doesn't appear on student dashboard"
- Check that
userselectis set to"true"in setspec - Verify the TDF was uploaded successfully
"Questions don't display correctly"
- Check your stimulus file JSON syntax (use a JSON validator)
- Verify the
stimulusfilename in TDF matches your file name exactly
"Students can't answer questions"
- Check that
correctResponseis spelled correctly - Verify delivery params don't have
drill: "0"for tests
- Content Creation Overview - Complete reference
- Trial Types Reference - Understanding d, t, s, m, n, i, f trial types
- Audio & Speech Settings - Configure speech recognition and TTS
- Stimulus Files Guide - Media and question types
- Learning Sessions - AI-powered adaptive learning
- Assessment Sessions - Tests and quizzes
- FAQ - Common questions and answers
Ready to dive deeper? Check out the full Content Creation guide!