A modern web application for creating, managing, and organizing educational assessments following the QTI 3.0 specification. This project demonstrates the implementation of a teacher-focused assessment platform similar to Edulastic.
This platform provides educators with tools to:
- Create and manage QTI 3.0 compliant assessment items
- Organize items into comprehensive tests
- Manage curriculum-aligned content
- Import/export QTI compatible content
-
Assessment Item Management
- Multiple interaction types (choice, text-entry, etc.)
- QTI 3.0 compliant structure
- Rich content editing
- Item bank organization
-
Test Assembly
- Section-based organization
- Linear/non-linear navigation
- Individual/simultaneous submission modes
- QTI test part management
-
Curriculum Integration
- Subject-based organization
- Grade level alignment
- Educational standard mapping
- Content hierarchies
- Next.js with TypeScript
- Material-UI components
- Formik for form management
- Yup for validation
- Zustand for state management
- RESTful endpoints
- QTI 3.0 validation
- XML generation/parsing
- Error handling patterns
- Attempt operation
- Detect failure
- Show error
- Provide recovery option
- Unidirectional data flow
- Type-safe interfaces
- Validated state updates
- Consistent error handling
-
Installation
npm install
-
Development
npm run dev
-
Building
npm run build
- Use TypeScript for all components
- Follow QTI 3.0 specification
- Implement proper validation
- Include error handling
- Add loading states
- Provide user feedback
- Connect to localhost:3000
- Handle authentication
- Manage requests/responses
- Validate data structures
- Follow 3.0 specification
- Validate XML structure
- Handle import/export
- Maintain data integrity
-
Form Handling
- Client-side validation
- Server-side validation
- Error messaging
- State management
-
Data Management
- Type safety
- State consistency
- Error recovery
- Loading states
-
User Experience
- Clear feedback
- Error recovery
- Progress indication
- Intuitive navigation
When contributing:
- Follow TypeScript patterns
- Maintain QTI 3.0 compliance
- Include error handling
- Add appropriate tests
- Update documentation
For assistance:
- Review documentation
- Check existing issues
- Create detailed bug reports
- Follow error handling patterns