Skip to content

ted-devs/erujudge-test

Repository files navigation

EduJudge - Backend API

Intelligent Code Evaluator and Course Portal Backend

🚀 Quick Start

Prerequisites

  • Python 3.12+

Installation

  1. Clone the repository (if applicable)

  2. Create and activate virtual environment

py -3.12 -m venv venv
.\venv\Scripts\activate
  1. Install dependencies
pip install -r requirements.txt
  1. Run migrations
python manage.py makemigrations
python manage.py migrate
  1. Create superuser
python manage.py createsuperuser
  1. Run development server
python manage.py runserver

📚 API Documentation

Once the server is running, access the API documentation at:

🔑 Authentication

The API uses JWT (JSON Web Tokens) for authentication.

Endpoints

  • POST /api/users/register/ - Register new user
  • POST /api/users/login/ - Login and get access/refresh tokens
  • POST /api/users/token/refresh/ - Refresh access token
  • GET /api/users/profile/ - Get current user profile
  • PUT /api/users/profile/ - Update current user profile

🏗️ Project Structure

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

🛠️ Tech Stack

  • Framework: Django 5.2 + Django REST Framework
  • Authentication: SimpleJWT
  • Documentation: drf-spectacular (Swagger/OpenAPI)
  • Database: SQLite (development)
  • Code Execution: Subprocess-based (Python)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors