An educational coding challenge platform with AI-powered problem generation, sandboxed Docker code execution, and a novel EiPL (Explain in Plain Language) submission system for assessing conceptual understanding.
- AI Problem Generation -- AI-powered problem creation via any OpenAI-compatible API (OpenAI, Meta Llama, VT ARC) across multiple types (code, MCQ, EiPL, debug-fix, refute, probeable)
- Sandboxed Execution -- Docker containers with resource limits, network isolation, and timeout enforcement
- EiPL System -- Students explain code behavior in plain language; AI evaluates conceptual understanding
- Multi-Modal Hints -- Variable Fade, Subgoal Highlighting, and Suggested Trace hint strategies
- Privacy Compliance -- GDPR, FERPA, COPPA, and DPDPA consent management with data export and account deletion
- Progress Tracking -- Per-student analytics, instructor dashboards, and research data export with anonymization
- Course Management -- Instructor roles, problem set organization, enrollment, and team management
Help translate Purplex into your language! See CONTRIBUTING_TRANSLATIONS.md for guidelines.
# Prerequisites: Python 3.11+, Docker, Node.js 20+
# Clone and set up
cp .env.example .env.development # Edit to add your API keys
python -m venv env && source env/bin/activate
pip install -r requirements.txt
# Start everything (PostgreSQL, Redis, Django, Celery, Vue, Flower)
./start.sh| Service | URL |
|---|---|
| Frontend | http://localhost:5173 |
| Django API | http://localhost:8000 |
| Admin Panel | http://localhost:8000/admin |
| Flower (Celery) | http://localhost:5555 |
Development uses mock Firebase auth -- no external setup required.
Backend: Django 5.0 · Django REST Framework · PostgreSQL 15 · Celery + Redis · Firebase Auth
Frontend: Vue 3 · TypeScript · Vite · Vuex 4 · Ace Editor
Infrastructure: Docker · Gunicorn · SSE for real-time updates
pytest # All tests
pytest -m unit # Unit tests only
pytest -m integration # Integration tests only
cd purplex/client && npm run test # Frontend tests| Document | Description |
|---|---|
| Development Guide | Setup, workflows, troubleshooting, environment config |
| Architecture | System design, data flows, and key decisions |
| Standards | Coding conventions and required patterns |
| Patterns | Implementation examples and templates |
| Deployment | Docker and production deployment |
| Security | Security practices and configuration checklist |
| Testing | Test framework, factories, and fixtures |
| Changelog | Release history |
See CONTRIBUTING.md for guidelines. For security issues, see SECURITY.md.
