Skip to content

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

 
 

Latest commit

 

History

402 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Purplex

Purplex

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.

CI Security codecov

License: GPL v3 Python 3.11+ Django 5.0 Vue 3

Purplex platform showing EiPL, Prompt, Refute, and Probeable problem types
Four problem types: Explain in Plain Language, Prompt, Refute, and Probeable

Features

  • 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

Translation Status

English Spanish Bengali Te Reo Māori Chinese French German Hindi Japanese Kannada Marathi Portuguese Punjabi Tamil Telugu Thai Vietnamese

Help translate Purplex into your language! See CONTRIBUTING_TRANSLATIONS.md for guidelines.

Quick Start

# 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.

Tech Stack

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

Testing

pytest                  # All tests
pytest -m unit          # Unit tests only
pytest -m integration   # Integration tests only
cd purplex/client && npm run test   # Frontend tests

Documentation

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

Contributing

See CONTRIBUTING.md for guidelines. For security issues, see SECURITY.md.

License

GNU General Public License v3.0

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages