AI-assisted framework for creating high-quality educational assessment questions from instructional materials.
QuestionForge helps educators create pedagogically sound assessment questions through a structured, AI-assisted process. It bridges the gap between what was actually taught (conducted instruction) and fair assessment by analysing teaching materials and guiding question development.
Key Innovation: Most assessment tools work from curriculum documents. QuestionForge analyses your actual teaching materials (lectures, slides, recordings) to ensure assessments match what students experienced.
- Flexible Entry Points - Start from materials, objectives, blueprints, or existing questions
- Methodology Guidance - Structured M1-M4 process with teacher control at every stage
- QTI Export - Generate Inspera-compatible QTI packages
- 15 Question Types - Multiple choice, text entry, matching, hotspot, and more
- Self-Learning - System learns your formatting preferences over time
# Clone the repository
git clone https://github.com/tikankika/QuestionForge.git
cd QuestionForge
# Install qf-pipeline (Python)
cd packages/qf-pipeline
pip install -e .
# Install qf-scaffolding (TypeScript)
cd ../qf-scaffolding
npm install
npm run build
See Getting Started for detailed setup instructions.
QuestionForge consists of two MCP (Model Context Protocol) servers:
| Component | Language | Purpose |
|---|---|---|
| qf-scaffolding | TypeScript | Methodology guidance (M1-M4) |
| qf-pipeline | Python | Validation and QTI export |
┌─────────────────────────────────────────────────────────────┐
│ QUESTIONFORGE │
├─────────────────────────────────────────────────────────────┤
│ qf-scaffolding │ qf-pipeline │
│ ───────────────── │ ──────────── │
│ M1: Content Analysis │ Validation (Step 2) │
│ M2: Assessment Design │ Auto-fix (Step 3) │
│ M3: Question Generation │ QTI Export (Step 4) │
│ M4: Quality Assurance │ │
│ │ │
│ Methodology ←────────┼────→ Technical Pipeline │
└─────────────────────────────────────────────────────────────┘
- M1: Content Analysis - Analyse instructional materials, identify emphasis patterns
- M2: Assessment Design - Define objectives, Bloom's distribution, question types
- M3: Question Generation - Create questions aligned with conducted instruction
- M4: Quality Assurance - Review, validate, refine
- Pipeline - Validate format, auto-fix issues, export to QTI
- Getting Started - Installation and first project
- Workflow Guide - Complete workflow documentation
- Architecture Decisions - ADRs explaining design choices
- RFCs - Design proposals and specifications
- Technical Specs - Detailed specifications
QuestionForge/
├── methodology/ # M1-M4 methodology guides
│ ├── m1/ # Content Analysis (8 stages)
│ ├── m2/ # Assessment Design (9 stages)
│ ├── m3/ # Question Generation (5 stages)
│ ├── m4/ # Quality Assurance (6 stages)
│ └── m5/ # Format Reference
├── packages/
│ ├── qf-pipeline/ # Python MCP - validation & export
│ ├── qf-scaffolding/ # TypeScript MCP - methodology
│ └── qti-core/ # QTI generation logic
├── docs/
│ ├── adr/ # Architecture Decision Records
│ ├── rfcs/ # Request for Comments
│ └── specs/ # Technical specifications
└── qf-specifications/ # Shared specifications (logging schema)
- Python 3.10+
- Node.js 18+
- Claude Desktop (for MCP integration)
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
CC BY-NC-SA 4.0 - See LICENSE.md
This means you can:
- ✅ Use for educational purposes
- ✅ Adapt and build upon
- ✅ Share with attribution
- ❌ Use commercially without permission
QuestionForge builds on research in:
- Constructive alignment (Biggs & Tang)
- Formative assessment (Black & Wiliam)
- Swedish assessment research (Lundahl, Hirsh)
QuestionForge - Forging Quality Questions