Generate AI-powered course content and export it as Common Cartridge files for import into Canvas LMS.
Get started in 5 minutes!
- Get a free API key from https://console.anthropic.com/
- Create
.envfile:echo "ANTHROPIC_API_KEY=your_key" > .env - Install:
pip install -r proxy_requirements.txt - Run:
python proxy_server.py - Open
faculty_content_generator.htmlin your browser
Perfect for individual faculty - simple and fast
- ✅ 5-minute setup - minimal configuration
- ✅ Lightweight - just Python + HTML
- ✅ Secure - API key stays on your computer
- ✅ No database - no complex setup
- 👉 Quick Start Guide
Note: Doesn't work due to browser CORS restrictions
- ❌ Cannot call Anthropic API from browser
- 👉 Use HTML + Proxy version instead
Perfect for institutions and teams
- ✅ Secure server-side API key storage
- ✅ User authentication and access control
- ✅ Better for team environments
- 👉 See installation instructions below
A full-featured Django web application that allows faculty to generate AI-powered course content and export it as Common Cartridge files for import into Canvas LMS.
- AI-Powered Content Generation: Uses Claude AI to create comprehensive course content
- Web Interface: Simple, user-friendly form for inputting course parameters
- Structured Course Design: Generates weekly modules with introduction and lecture pages
- Learning Objectives: Each week includes clearly defined learning objectives
- Common Cartridge Export: Exports as IMS Common Cartridge 1.1 format for Canvas import
For each week of your course, the tool creates:
- Introduction Page: Engaging introduction with learning objectives and context
- Lecture Page: Comprehensive lecture content covering the weekly topic
All content is organized into weekly modules and packaged as a Common Cartridge (.imscc) file.
- Python 3.8+
- Anthropic API key
- Canvas LMS access (for importing the generated content)
-
Clone or navigate to the repository
cd /path/to/Canvas -
Install dependencies
pip install -r requirements.txt
-
Set up environment variables
cp .env.example .env
Edit
.envand add your Anthropic API key:ANTHROPIC_API_KEY=your_api_key_here -
Run database migrations
python manage.py migrate
-
Start the development server
python manage.py runserver
-
Access the application Open your browser to
http://localhost:8000
-
Navigate to the home page
-
Fill out the course generation form:
- Course Name: Full name of your course (e.g., "Introduction to Psychology")
- Subject Area: The subject or discipline (e.g., "Psychology")
- Number of Weeks: How many weeks the course runs (1-52)
- Target Audience: Student level (undergraduate, graduate, etc.)
- Additional Context (optional): Any specific requirements or topics
-
Click "Generate Course Content"
-
Wait for the generation process to complete (may take several minutes)
-
Download the generated .imscc file
- In Canvas, navigate to your course
- Click Settings in the course navigation
- Click Import Course Content
- Select Common Cartridge 1.x Package as the content type
- Click Choose File and upload the .imscc file
- Click Import
- Wait for the import to complete
- Review and publish the imported content
Canvas/
├── faculty_content_tool/ # Django project settings
│ ├── settings.py # Main configuration
│ └── urls.py # URL routing
├── content_generator/ # Main application
│ ├── forms.py # Course generation form
│ ├── views.py # View logic
│ ├── claude_service.py # Claude API integration
│ ├── cartridge_builder.py # Common Cartridge export
│ └── templates/ # HTML templates
├── media/ # Generated cartridge files
├── requirements.txt # Python dependencies
├── .env.example # Environment variables template
└── README.md # This file
- Form Submission: Faculty submit course parameters through the web form
- Course Structure Generation: Claude AI generates a course outline with weekly topics and learning objectives
- Content Generation: For each week, Claude AI generates:
- An introduction page with learning objectives
- A comprehensive lecture page
- Common Cartridge Building: All content is packaged into a valid IMS CC 1.1 file
- Download: The .imscc file is provided for download
- Backend: Django 4.2+
- AI Engine: Anthropic Claude API
- Export Format: IMS Common Cartridge 1.1
- Language: Python 3
- Be specific in the subject area (e.g., "Cognitive Psychology" vs. "Psychology")
- Use the additional context field to specify particular topics or approaches
- Choose the appropriate target audience for content difficulty
- Review and customize generated content in Canvas after import
- Start with a smaller number of weeks (e.g., 2-3) to test the output
After importing to Canvas, you can:
- Edit any generated content
- Add assignments, quizzes, and discussions
- Reorder or reorganize modules
- Add multimedia content
- Customize the styling and formatting
- Ensure
.envfile exists withANTHROPIC_API_KEYset - Restart the Django server after setting the API key
- Generation time increases with the number of weeks
- Each week requires multiple API calls
- For courses with many weeks, consider generating in batches
- Ensure the file has .imscc extension
- Verify you selected "Common Cartridge 1.x Package" as import type
- Check Canvas import logs for specific errors
This tool is provided as-is for educational purposes.
For issues or questions, please refer to the Django and Canvas LMS documentation.