Quest Templates and Tools¶
This directory contains templates and tools for creating and managing quests in the IT-Journey quest system.
Templates¶
Main Quest Template¶
File: main-quest-template.md
Full template for main storyline quests. Includes: - Complete frontmatter with all required and optional fields - Quest network positioning diagrams - Multi-platform implementation paths (macOS, Windows, Linux, Cloud) - Progressive learning chapters (3+ chapters) - Hands-on mastery challenges (Novice, Intermediate, Advanced) - Rewards and achievement systems - Resource library and next steps
Use for: Core learning path quests that advance the main storyline.
Level README Template¶
File: level-readme-template.md
Standard template for level directory README files. Includes: - Level overview and positioning - Complete quest listings (main, side, bonus) - Quest network map with Mermaid diagrams - Character class progression paths - Prerequisites and unlocks - Resources and tools for the level
Use for: Creating or updating level directory README files.
Side Quest Template (Coming Soon)¶
File: side-quest-template.md (Planned)
Template for optional learning adventures that enhance skills without being required for progression.
Bonus Quest Template (Coming Soon)¶
File: bonus-quest-template.md (Planned)
Template for advanced challenges and mastery demonstrations.
Tools¶
Quest Generation Script¶
File: ../scripts/quest/generate-placeholder-quest.sh
Automated script to create placeholder quest files from templates.
Usage:
Examples:
# Create a basic quest
./scripts/quest/generate-placeholder-quest.sh 0110 database-design-fundamentals "Database Design Fundamentals"
# Create with additional options
./scripts/quest/generate-placeholder-quest.sh 0110 sql-sorcery "SQL Sorcery" \
--difficulty medium \
--time "45-60 minutes" \
--tech sql \
--skill data-engineering
# Dry run to preview
./scripts/quest/generate-placeholder-quest.sh 1101 ml-fundamentals "ML Fundamentals" --dry-run
Options:
- --difficulty: easy, medium, hard, epic (default: easy)
- --type: main_quest, side_quest, bonus_quest (default: main_quest)
- --time: Estimated time (e.g., "30-45 minutes")
- --tech: Primary technology (e.g., docker, react, python)
- --skill: Skill focus (e.g., frontend, backend, devops)
- --dry-run: Preview without creating files
Quest Network Validator¶
File: ../scripts/quest/validate-quest-network.py
Python script to validate quest network integrity.
Usage:
Checks: - β Required frontmatter fields present - β Quest dependencies exist - β No circular dependencies - β Identifies orphaned quests - β Validates quest relationships - β Generates a report with statistics, errors, and warnings
Output: - Quest statistics (total, complete, placeholder, draft) - List of errors (broken dependencies, missing fields) - List of warnings (orphaned quests, invalid formats) - Overall validation status (pass/fail)
Quick Start Guide¶
Creating a New Quest¶
- Plan your quest:
- Determine level (binary format: 0000-1111)
- Choose quest type (main, side, or bonus)
- Define difficulty and estimated time
-
Identify technologies and skills covered
-
Generate placeholder:
-
Edit the generated file:
- Fill in the description and learning objectives
- Add multi-platform implementation details
- Create hands-on challenges
- Define prerequisites and unlocks
-
Add resources and documentation links
-
Update level README:
- Add quest to appropriate section
- Update quest network diagram
-
Include in character class paths
-
Validate the quest network:
-
When complete:
- Set
draft: falsein frontmatter - Update home.md and main README.md
- Create git commit with conventional format
Creating a New Level¶
-
Create level directory:
-
Generate level README:
-
Customize level README:
- Fill in level details
- Define core objectives
- List planned quests
-
Create quest network diagram
-
Generate quests for the level:
Template Customization¶
Frontmatter Fields¶
Required Fields (all quests must have):
- title: Quest title
- description: SEO-friendly description (150-300 chars)
- level: Binary level (e.g., "0110")
- difficulty: π’ Easy | π‘ Medium | π΄ Hard | βοΈ Epic
- estimated_time: Time estimate (e.g., "30-45 minutes")
- quest_type: main_quest | side_quest | bonus_quest
- permalink: URL path for the quest
Recommended Fields:
- quest_dependencies: Prerequisites and unlocks
- quest_relationships: Parent, child, parallel, sequel quests
- learning_paths: Character class alignment
- rewards: Badges, skills, XP
- validation_criteria: Completion requirements
Optional Fields:
- quest_line: Campaign/storyline name
- quest_arc: Story arc grouping
- quest_mapping: Position on quest map
- primary_technology: Main tech focus
- skill_focus: Skill category
Content Structure¶
Each quest should include:
- Epic Introduction - Fantasy-themed opening
- Quest Network Position - Mermaid diagram
- Quest Objectives - Primary, Secondary, Mastery
- Prerequisites - Knowledge, System, Skill Level
- Multi-Platform Paths - macOS, Windows, Linux, Cloud
- Learning Chapters (3-5):
- Skills to forge
- Step-by-step implementation
- Knowledge checks
- Quick wins and checkpoints
- Mastery Challenges (3):
- Novice (π’)
- Intermediate (π‘)
- Advanced (π΄)
- Rewards & Achievements
- Next Steps & Quest Network
- Resource Library
Best Practices¶
Quest Design¶
- Clear Learning Objectives: Be specific and measurable
- Progressive Difficulty: Build from simple to complex
- Hands-On Practice: Include practical implementations
- Multi-Platform: Cover macOS, Windows, Linux, Cloud where applicable
- Fantasy Theme: Maintain RPG language and metaphors
- Validation Criteria: Define clear success metrics
Frontmatter Standards¶
- Complete Metadata: Fill all required fields
- Accurate Dependencies: Link to actual quest permalinks
- Proper Formatting: Follow YAML syntax strictly
- Consistent Naming: Use kebab-case for slugs
- Draft Status: Set
draft: trueuntil complete
Quest Network¶
- No Orphans: Every quest should be referenced
- Clear Progression: Define prerequisites and unlocks
- No Circular Deps: Avoid circular dependencies
- Character Alignment: Map to character classes
- Level Coherence: Quests should fit level theme
Validation Checklist¶
Before marking a quest complete:
- All required frontmatter fields present
- Quest network position diagram included
- All prerequisites listed and linked
- All unlocked quests listed and linked
- Multi-platform instructions present
- At least 2 hands-on challenges defined
- Learning objectives clearly stated
- Validation criteria specified
- Fantasy theme integrated throughout
- Resources section populated
- Level README updated
- home.md updated
- Main README.md updated
- All internal links validated
- Validation script passes
Contributing¶
When creating new templates or improving existing ones:
- Follow existing template structure
- Comment each field and section so users know what to fill in
- Test with generation script
- Update this README
- Submit PR with examples
Support¶
- Documentation: See
.github/instructions/quest.instructions.md - Build Plan: See
QUEST_BUILD_PLAN.md - Issues: Report template issues in GitHub Issues
- Discussions: Use GitHub Discussions for questions
Last Updated: 2025-11-29 Maintainers: IT-Journey Team