This directory contains essential scripts for the Mastery AI Apps and Development Workshop. These scripts help automate setup, validation, management, and organization tasks throughout your learning journey.
Complete workshop environment setup script.
Features:
- Installs all required tools (Python, Node.js, .NET, Docker, etc.)
- Configures development environment
- Sets up VS Code with extensions
- Creates Python virtual environment
- Configures Git and authenticates with GitHub/Azure
Usage:
# Linux/macOS
./scripts/setup-workshop.sh
# Windows PowerShell (Run as Administrator)
.\scripts\setup-workshop.ps1Comprehensive validation script that checks if your system meets all workshop requirements.
Features:
- Validates OS compatibility
- Checks hardware requirements (CPU, RAM, disk space)
- Verifies tool installations and versions
- Tests network connectivity
- Validates workshop structure
- Provides detailed pass/fail/warning report
Usage:
./scripts/validate-prerequisites.shGet started with the workshop in just 5 minutes!
Features:
- Quick requirements check
- Sets up first module with starter files
- Creates quick reference guide
- Configures VS Code workspace
- Interactive progress tracking
- Provides helpful tips
Usage:
# Linux/macOS
./scripts/quick-start.sh
# Windows PowerShell
.\scripts\quick-start.ps1Fast verification script to check if you're ready to start.
Features:
- Checks workshop directory structure
- Verifies key tool availability
- Tests GitHub Copilot status
- Quick system readiness check
- Provides immediate go/no-go feedback
Usage:
./scripts/quick-verify.shComprehensive system diagnostic report generator.
Features:
- Complete system information
- Development tools inventory
- Version checking for all tools
- Network connectivity tests
- Azure and GitHub authentication status
- Workshop structure validation
- Performance recommendations
Usage:
./scripts/diagnostic.shModule-specific validation and checking tool.
Features:
- Validates module structure
- Checks required files and directories
- Verifies exercise completeness
- Track-specific validation
- Dependencies checking
- Content analysis
Usage:
# Check specific module
./scripts/check-module.sh 5
# Check current module (if in module directory)
../../scripts/check-module.sh 10Safely clean up Azure resources created during the workshop.
Features:
- Module-specific cleanup
- Dry-run mode for safety
- Batch cleanup for all resources
- Resource group management
- Handles soft-deleted resources
- Progress tracking
Usage:
# Clean specific module resources
./scripts/cleanup-resources.sh --module 5
# Clean all workshop resources (dry run)
./scripts/cleanup-resources.sh --all --dry-run
# Clean specific resource group
./scripts/cleanup-resources.sh --resource-group my-workshop-rg
# Check deletion status
./scripts/cleanup-resources.sh --checkBackup your workshop progress and solutions.
Features:
- Selective module backup
- Option to include/exclude solutions
- Progress report generation
- Compression support
- Metadata tracking
- Custom backup naming
Usage:
# Backup all your work (excluding solutions)
./scripts/backup-progress.sh --modules all
# Backup modules 1-5 with solutions
./scripts/backup-progress.sh --modules 1-5 --solutions
# Backup specific modules
./scripts/backup-progress.sh --modules "1,3,5-7,10"
# Custom backup location and name
./scripts/backup-progress.sh --modules all --output ~/backups --name my-workshop-progressCreates standard directory structure for all modules.
Features:
- Creates organized folder structure
- Sets up exercise directories
- Creates documentation folders
- Adds navigation templates
- Generates exercise READMEs
Usage:
./scripts/organize-modules.shAdds comprehensive navigation to all workshop documents.
Features:
- Adds breadcrumb navigation
- Creates module navigation bars
- Adds quick navigation sidebars
- Generates workshop resource footers
- Links all related documents
Usage:
./scripts/enhance-navigation.shMoves existing module files to the new organized structure.
Features:
- Reorganizes exercise files
- Moves documentation to proper folders
- Creates starter templates
- Maintains file relationships
- Generates index files
Usage:
./scripts/reorganize-files.shCreates comprehensive navigation links between all documents.
Features:
- Adds navigation to root documents
- Creates module navigation map
- Generates complete link index
- Verifies all internal links
- Reports broken links
Usage:
./scripts/create-navigation-links.shMakes all workshop scripts executable with proper permissions.
Features:
- Sets execute permissions on all shell scripts
- Handles PowerShell scripts for Git
- Makes Python scripts executable
- Reports on all processed scripts
Usage:
./scripts/make-scripts-executable.sh- Linux: Ubuntu 20.04+, Debian 10+
- macOS: 12 Monterey or later
- Windows: Windows 11 with PowerShell 5.1+ (Run as Administrator)
- Bash: Version 4.0+ (Linux/macOS)
- PowerShell: Version 5.1+ (Windows)
- WSL2: Recommended for Windows users
chmod +x scripts/*.sh
# Or use the utility script
./scripts/make-scripts-executable.sh# From workshop root
./scripts/setup-workshop.sh
# From any subdirectory
../scripts/validate-prerequisites.shIf you encounter execution policy errors on Windows:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser- make-scripts-executable.sh - Ensure all scripts can run
- setup-workshop.sh - Install and configure everything
- validate-prerequisites.sh - Verify setup was successful
- quick-verify.sh - Quick readiness check
- quick-start.sh - Get your first AI code running
- check-module.sh - Verify module structure before starting
- diagnostic.sh - Check system status if issues arise
- backup-progress.sh - Save your work regularly
- cleanup-resources.sh - Clean up after each module
- organize-modules.sh - Initial module organization
- reorganize-files.sh - Reorganize existing files
- enhance-navigation.sh - Add navigation features
- create-navigation-links.sh - Verify and fix links
# Make script executable
chmod +x scripts/script-name.sh
# Or run the utility
./scripts/make-scripts-executable.sh
# Run with proper permissions
sudo ./scripts/setup-workshop.sh # Only if needed# Unblock downloaded scripts
Get-ChildItem -Path scripts -Filter *.ps1 | Unblock-File
# Or run with bypass
powershell -ExecutionPolicy Bypass -File .\scripts\setup-workshop.ps1# Ensure you're in the workshop root directory
pwd # Should show .../Mastery-AI-Apps-Dev
# Check script exists
ls scripts/| Script | Auto-Install | Validation | Cleanup | Interactive | Dry-Run | Backup |
|---|---|---|---|---|---|---|
| setup-workshop | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ |
| validate-prerequisites | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| quick-start | ❌ | ✅ | ❌ | ✅ | ❌ | ❌ |
| quick-verify | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| diagnostic | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| check-module | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| cleanup-resources | ❌ | ✅ | ✅ | ✅ | ✅ | ❌ |
| backup-progress | ❌ | ❌ | ❌ | ✅ | ❌ | ✅ |
| organize-modules | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| enhance-navigation | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| reorganize-files | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| create-navigation-links | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| make-scripts-executable | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Scripts are maintained as part of the workshop. To get the latest versions:
git pull origin main
./scripts/make-scripts-executable.sh # Re-apply execute permissionsIf you find issues or have improvements for the scripts:
- Open an issue describing the problem
- Submit a pull request with your fix
- Ensure scripts work on all supported platforms
All scripts follow these conventions:
- Clear error messages with color coding
- Progress indicators for long operations
- Dry-run options where applicable
- Help text with -h or --help
- Non-destructive by default
- Cross-platform compatibility where possible
- Check script help:
./scripts/script-name.sh --help - Review workshop TROUBLESHOOTING.md
- Search GitHub Issues
- Ask in GitHub Discussions
Happy scripting! 🚀 These tools are here to make your workshop experience smooth and enjoyable.