Documentation Index
Last Updated: November 25, 2025
This directory contains all technical documentation for the Course Equivalency and Transfer Planning System.
Start Here
Complete technical overview:
- System architecture and features
- Authentication system (TOTP-based)
- Database schema and models
- API endpoints
- File structure
- Environment configuration
- Testing and deployment
User Documentation
Complete guide for students using the system:
- Creating and managing degree plans
- Adding courses and tracking progress
- Understanding prerequisites and constraints
- Working with course equivalencies
- Saving and sharing plans with advisors
- Downloading and printing plans
- Troubleshooting common issues
High-level guide for academic advisors:
- Getting started with the system
- Signing in with TOTP authentication
- Managing program requirements overview
- Working with student plans
- Security and best practices
Detailed guide for uploading program requirements:
- How to prepare and upload CSV files
- Understanding constraints and requirements
- Managing existing requirements
- Complete examples and best practices
- Troubleshooting common issues
CSV file format specification:
- Column definitions and examples
- Constraint types (credits, courses, level, tags)
- Category-level vs group-level constraints
- Sample data structures
- Quick reference guide
Authentication & Security
Advisor authentication system details:
- TOTP-based authentication
- Security architecture
- API endpoints and frontend components
- Database schema
- Session management
Admin token and plan session authentication:
- Admin API token usage
- Plan-code session system
- Rate limiting and security
- Frontend integration
Core Features
Course prerequisite validation system:
- Course-level prerequisites
- Transitive equivalency support
- API endpoints for validation
- BFS-based chain resolution
- CSV format for prerequisites
Requirement constraint system:
- Database schema for constraints
- Credit exclusion for violating courses
- Validation API endpoints
- UI display and warnings
- Filtered course suggestions
Category vs group-level constraint scoping:
- Constraint key structure
- Scope filter JSON format
- Group name filtering
- Subject code filtering
- Evaluation logic
Sample Data
Sample CSV files and templates:
- DCC and UNO course catalogs
- Sample equivalencies
- Program requirement examples
- Constraint examples
Archive
Historical documentation (see archive/ directory):
- Migration documentation
- Implementation change records
- Old UI components
- Legacy CSV guides
- Past system updates
Quick Reference
For students:
- Start with Student Guide
- Learn how to create plans, add courses, and track progress
For advisors uploading data:
For developers:
- Start with Technical Documentation for system overview
- Check feature-specific docs (prerequisites, constraints, auth)
For deployment:
Contributing to Documentation
When updating documentation:
- Update the relevant document with your changes
- Update Technical Documentation if features/architecture changed
- Update this index if you add/remove/move documents
- Add date stamps to major updates
- Move outdated docs to
archive/ rather than deleting
Maintainer: UNO CS Department
Repository: mmennelle/course-equivalency
Branch: dev-main