Intelligent Code Evaluator and Course Portal Backend
- Python 3.12+
-
Clone the repository (if applicable)
-
Create and activate virtual environment
py -3.12 -m venv venv
.\venv\Scripts\activate- Install dependencies
pip install -r requirements.txt- Run migrations
python manage.py makemigrations
python manage.py migrate- Create superuser
python manage.py createsuperuser- Run development server
python manage.py runserverOnce the server is running, access the API documentation at:
- Swagger UI: http://localhost:8000/api/schema/swagger-ui/
- ReDoc: http://localhost:8000/api/schema/redoc/
The API uses JWT (JSON Web Tokens) for authentication.
POST /api/users/register/- Register new userPOST /api/users/login/- Login and get access/refresh tokensPOST /api/users/token/refresh/- Refresh access tokenGET /api/users/profile/- Get current user profilePUT /api/users/profile/- Update current user profile
edujudge/
├── edujudge/ # Project settings
├── users/ # User authentication & management
├── courses/ # Course & classroom management
├── problems/ # Coding problems & test cases
├── submissions/ # Code submissions & results
├── execution/ # Code execution engine
├── manage.py
└── requirements.txt
- Framework: Django 5.2 + Django REST Framework
- Authentication: SimpleJWT
- Documentation: drf-spectacular (Swagger/OpenAPI)
- Database: SQLite (development)
- Code Execution: Subprocess-based (Python)