curriculum-package-common-cartridge
π―Skillfrom pauljbernard/content
curriculum-package-common-cartridge skill from pauljbernard/content
Part of
pauljbernard/content(103 items)
Installation
npx skills add pauljbernard/content --skill curriculum-package-common-cartridgeSkill Details
Generate IMS Common Cartridge 1.3 packages with QTI assessments, LTI tool links, discussion forums, and full gradebook integration. Use when creating portable, interoperable LMS packages for Canvas, Moodle, Blackboard. Activates on "create Common Cartridge", "CC package", "IMS CC", or "interoperable LMS package".
Overview
# Common Cartridge Package Generation
Create IMS Common Cartridge 1.3 packages with complete course structure, QTI 2.1 assessments, LTI tool integration, and gradebook setup for maximum interoperability across LMS platforms.
When to Use
- Create portable LMS packages (works across Canvas, Moodle, Blackboard, D2L, Schoology)
- Export courses with QTI 2.1 assessments (portable assessment format)
- Include LTI tools in course packages
- Set up gradebook categories and weights
- Package courses with discussion forums
- Need better interoperability than SCORM provides
Advantages Over SCORM
| Feature | SCORM | Common Cartridge |
|---------|-------|------------------|
| Assessment Format | Embedded in content | QTI 2.1 (portable) |
| External Tools | No | LTI 1.1/1.3 support |
| Gradebook Setup | Basic scoring | Full categories & weights |
| Discussion Forums | No | Native support |
| Interoperability | LMS-specific wrappers | Platform-agnostic |
| Modern LMS Support | Declining | Preferred format |
Use Common Cartridge when:
- You need QTI assessments (portable across systems)
- You want to embed LTI tools (e.g., YouTube, Google Docs, simulations)
- You need full gradebook configuration
- You want discussion forums in the package
- You need maximum interoperability
Use SCORM when:
- You need simple completion tracking
- Legacy LMS requires it
- Content is standalone module (not full course)
Required Inputs
- Curriculum Materials: Lessons (HTML/Markdown), assessments (QTI 2.1), resources
- Course Metadata: Title, code, description, dates, copyright
- Gradebook Configuration: Assignment groups, weights, grading standards
- Optional: LTI tools, discussion forums, prerequisites
Templates Available
All templates in /templates/common-cartridge/:
imsmanifest.xml- Main manifest (required)course-settings.xml- Gradebook and course configurationlti-tool.xml- LTI Basic 1.0/1.1 tool linksdiscussion-topic.xml- Discussion forumsassessment-meta.xml- QTI assessment metadataweb-link.xml- External web links
See /templates/common-cartridge/README.md for full documentation.
Workflow
1. Gather Course Components
Collect and organize:
- Course Information: Title, code, description, dates, credits
- Learning Objectives: Aligned to standards (TEKS, CCSS, NGSS, etc.)
- Lessons: HTML files with content
- Assessments: QTI 2.1 XML files (use curriculum.export-qti skill)
- Multimedia: Images, videos, audio (optimized)
- Resources: PDFs, documents, handouts
- LTI Tools (optional): External tool configurations
- Discussion Topics (optional): Forum prompts and settings
2. Structure Course Hierarchy
Define organizational structure:
```
Course: Introduction to Biology (BIO-101)
βββ Module 1: Cell Structure
β βββ Lesson 1.1: Cell Membranes
β βββ Lesson 1.2: Organelles
β βββ Lab Activity: Microscope Use (LTI tool)
β βββ Discussion: Cell Theory Debate
β βββ Assessment: Module 1 Quiz (QTI)
βββ Module 2: Genetics
β βββ Lesson 2.1: DNA Structure
β βββ Lesson 2.2: Replication
β βββ Interactive Sim: DNA Replication (LTI)
β βββ Discussion: Ethics of Genetic Engineering
β βββ Assessment: Genetics Test (QTI)
βββ Final Exam (QTI)
```
3. Configure Gradebook
Set up assignment groups and weights:
```xml
```
Total weights should sum to 100%.
4. Generate Package Structure
Create directory structure:
```bash
course-package/
βββ imsmanifest.xml # Main manifest (required)
βββ course-settings.xml # Course config (optional but recommended)
βββ lessons/
β βββ lesson-1-1.html
β βββ lesson-1-2.html
β βββ lesson-2-1.html
β βββ lesson-2-2.html
βββ assessments/
β βββ module-1-quiz/
β β βββ assessment_meta.xml
β β βββ assessment.xml # QTI 2.1
β βββ module-2-test/
β β βββ assessment_meta.xml
β β βββ assessment.xml
β βββ final-exam/
β βββ assessment_meta.xml
β βββ assessment.xml
βββ discussions/
β βββ cell-theory-debate.xml
β βββ ethics-genetic-eng.xml
βββ lti-tools/
β βββ microscope-sim.xml
β βββ dna-replication-sim.xml
βββ resources/
β βββ images/
β β βββ cell-diagram.png
β β βββ dna-structure.png
β βββ videos/
β β βββ cell-division.mp4
β βββ documents/
β βββ lab-safety-guidelines.pdf
βββ web-links/
βββ khan-academy-biology.xml
```
5. Generate imsmanifest.xml
Use template with variable substitution:
```xml
```
6. Add QTI Assessments
Export assessments to QTI 2.1 format:
```bash
# Use curriculum.export-qti skill
/curriculum.export-qti --assessment-file "module-1-quiz.json" --output "assessments/module-1-quiz/" --version "2.1"
```
Ensure QTI compliance:
- Item types: Multiple Choice, True/False, Fill-in-the-Blank, Essay, Matching, Ordering
- Response processing
- Feedback (correct/incorrect)
- Scoring
7. Add LTI Tools (Optional)
Create LTI tool configurations:
```xml
```
8. Add Discussion Forums (Optional)
Create discussion topic configurations:
```xml
Read the historical context of cell theory discovery. Then, discuss:
]]>
```
9. Package as .imscc
```bash
# Create ZIP archive
cd course-package
zip -r ../bio-101-2025.imscc *
# Verify structure
unzip -l ../bio-101-2025.imscc | head -20
```
Required files:
imsmanifest.xml(must be at root)- All resources referenced in manifest
File naming:
- Use lowercase, hyphens (not spaces)
- Consistent naming convention
- No special characters
10. Validate Package
```bash
# Validate CC 1.3 compliance
/curriculum.validate-cc --package bio-101-2025.imscc
```
Validation checks:
- Manifest schema validity (IMS CC 1.3 XSD)
- All file references exist
- QTI 2.1 compliance
- LTI configuration validity
- Resource types correct
- No orphaned files
11. Test Import
Test in target LMS platforms:
Canvas:
```
- Go to Course Settings β Import Course Content
- Select "Common Cartridge 1.x Package"
- Upload .imscc file
- Choose content to import (all or selective)
- Wait for import to complete
- Verify: modules, lessons, assessments, gradebook
```
Moodle:
```
- Go to Course Administration β Restore
- Upload .imscc file
- Select import options
- Restore to course
- Verify content and settings
```
Blackboard:
```
- Control Panel β Packages and Utilities β Import Package
- Select .imscc file
- Choose import options
- Submit
- Verify course content
```
CLI Interface
```bash
# Basic CC package
/curriculum.package-common-cartridge \
--materials "curriculum-artifacts/" \
--output "course.imscc" \
--course-id "BIO-101" \
--course-title "Introduction to Biology"
# With gradebook configuration
/curriculum.package-common-cartridge \
--materials "curriculum-artifacts/" \
--output "course.imscc" \
--course-id "BIO-101" \
--course-title "Introduction to Biology" \
--gradebook-config "gradebook.json"
# With QTI assessments
/curriculum.package-common-cartridge \
--materials "curriculum-artifacts/" \
--qti-dir "assessments/" \
--output "course.imscc"
# With LTI tools
/curriculum.package-common-cartridge \
--materials "curriculum-artifacts/" \
--lti-config "lti-tools.json" \
--output "course.imscc"
# Full example
/curriculum.package-common-cartridge \
--materials "curriculum-artifacts/" \
--qti-dir "assessments/" \
--lti-config "lti-tools.json" \
--discussions "discussions/" \
--gradebook-config "gradebook.json" \
--course-id "BIO-101" \
--course-title "Introduction to Biology" \
--course-code "BIO-101" \
--start-date "2025-01-15" \
--end-date "2025-05-15" \
--output "bio-101-2025.imscc"
# Optimize for specific LMS
/curriculum.package-common-cartridge \
--materials "curriculum-artifacts/" \
--optimize-for "canvas" \
--output "course.imscc"
# Help
/curriculum.package-common-cartridge --help
```
Integration with Other Skills
Before Packaging:
- Export QTI Assessments:
```bash
/curriculum.export-qti --assessment "quiz-1.json" --output "assessments/quiz-1/" --version "2.1"
```
- Validate Content Accessibility:
```bash
/curriculum.review-accessibility --materials "lessons/" --standard "WCAG-2.1"
```
- Check Pedagogical Soundness:
```bash
/curriculum.review-pedagogy --materials "curriculum-artifacts/"
```
After Packaging:
- Validate CC Package:
```bash
/curriculum.validate-cc --package "course.imscc"
```
- Test in LMS (cc-validator agent):
```bash
/agent.cc-validator --action "test" --package "course.imscc" --lms-targets "canvas,moodle,blackboard"
```
Output Artifacts
Primary Output:
course.imscc- Common Cartridge package (ZIP format)
Optional Outputs:
manifest-validation-report.txt- Validation resultspackage-structure.txt- Package contents listingimport-instructions.md- LMS-specific import instructions
Best Practices
File Organization
β Do:
- Use clear, descriptive file names
- Organize by content type (lessons/, assessments/, resources/)
- Use lowercase with hyphens (not spaces)
- Keep file paths under 255 characters
β Don't:
- Use spaces in file names
- Use special characters (except hyphens, underscores)
- Create deeply nested directories (>5 levels)
- Include absolute file paths
QTI Assessments
β Do:
- Use QTI 2.1 format (most compatible)
- Include response processing
- Add feedback for correct/incorrect
- Specify point values
- Include metadata
β Don't:
- Use proprietary assessment formats
- Embed assessments in HTML (use QTI)
- Forget to link assessments in gradebook
LTI Tools
β Do:
- Use HTTPS launch URLs
- Specify privacy level clearly
- Test tool launch in target LMS
- Include icon URLs
- Document custom parameters
β Don't:
- Use HTTP-only URLs (insecure)
- Forget to configure privacy settings
- Hardcode user information in URLs
Gradebook Setup
β Do:
- Make weights sum to 100%
- Group similar assignments
- Specify grading standards
- Link assessments to gradebook
- Set reasonable due dates
β Don't:
- Leave assignments unweighted
- Create too many categories (4-6 ideal)
- Forget to specify points possible
Metadata
β Do:
- Include complete course information
- Add keywords for searchability
- Specify copyright/license
- Include creation date
- Document prerequisites
β Don't:
- Leave metadata fields empty
- Use vague course descriptions
- Forget copyright information
Troubleshooting
Package Won't Import
Symptom: LMS rejects .imscc file
Causes:
- Invalid manifest XML
- Missing required files
- Incorrect resource types
- Schema validation failures
Solutions:
```bash
# Validate package
/curriculum.validate-cc --package course.imscc
# Check manifest syntax
xmllint --schema imscc_v1p3.xsd imsmanifest.xml
# Verify all files referenced exist
unzip -l course.imscc
```
Assessments Don't Display
Symptom: QTI assessments show as blank or error
Causes:
- Invalid QTI 2.1 XML
- Missing item files
- Incorrect resource type in manifest
Solutions:
```bash
# Validate QTI
/curriculum.export-qti --validate assessment.xml
# Check resource type in manifest
grep "imsqti_xmlv1p2/imscc_xmlv1p3/assessment" imsmanifest.xml
```
Gradebook Not Configured
Symptom: Assignments don't appear in gradebook
Causes:
- Missing course-settings.xml
- Assignments not linked to groups
- No assignment group weights
Solutions:
- Ensure course-settings.xml is included
- Link each assignment to assignment_group
- Verify weights sum to 100%
LTI Tools Don't Launch
Symptom: Tool links show error or don't open
Causes:
- Invalid launch URL
- Missing privacy settings
- Tool not configured in LMS
Solutions:
- Test launch URL manually
- Verify privacy_level is set
- Configure tool provider in LMS first
Exit Codes
- 0: Package created successfully
- 1: Invalid course materials
- 2: Missing required inputs
- 3: QTI validation failed
- 4: Manifest generation failed
- 5: Packaging (ZIP) failed
- 6: Validation failed
References
- [IMS Common Cartridge 1.3 Specification](https://www.imsglobal.org/cc/ccv1p3/imscc_profilev1p3-html/)
- [IMS QTI 2.1 Specification](https://www.imsglobal.org/question/qtiv2p1/imsqti_infov2p1.html)
- [IMS Basic LTI 1.0](https://www.imsglobal.org/specs/ltiv1p0)
- [Canvas CC Documentation](https://canvas.instructure.com/doc/api/file.common_cartridge.html)
- Templates:
/templates/common-cartridge/README.md - Production Guide: [PRODUCTION_GUIDE.md](../../../PRODUCTION_GUIDE.md) Section 3
See Also
- curriculum.export-qti - Export assessments to QTI 2.1
- curriculum.validate-cc - Validate CC packages
- curriculum.package-lms - Alternative LMS packaging (SCORM, Canvas, Moodle)
- cc-validator agent - Automated CC testing and validation
- PRODUCTION_GUIDE.md - Complete CC production workflows
More from this repository10
curriculum-design skill from pauljbernard/content
curriculum-develop-content skill from pauljbernard/content
learning-language-level-calibration skill from pauljbernard/content
learning-localization-engineering skill from pauljbernard/content
learning-quality-assurance skill from pauljbernard/content
learning-tutor-assistant skill from pauljbernard/content
learning-microlesson-designer skill from pauljbernard/content
learning-global-accessibility skill from pauljbernard/content
learning-pedagogy skill from pauljbernard/content
learning-onboarding skill from pauljbernard/content