Skip to content

AndresGoGutierrez/CodeDev-judge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CodeDev - Virtual Judge Platform

A web platform designed to strengthen programming skills among students by providing tools and resources to prepare effectively for programming competitions. Built with Microservices architecture, Python, Javascript, and React, fully deployable via Docker/Kubernetes with CI/CD integration.


👨‍💻 Overview

This project is a virtual judge system that simulates real competition environments, allowing students to practice, submit code, and receive automated feedback. It features multiple independent microservices for authentication, code evaluation, document library, and support management, all accessible through a unified web interface.


🚀 Main Features

  • Virtual Judge Microservice: Evaluates code in multiple programming languages with automated test cases.
  • Authentication Microservice: Secure user registration, login, and session management.
  • Document Library Microservice: Centralized access to learning resources and problem statements.
  • Support (PQRS) Microservice: Handles user requests, questions, and feedback.
  • Unified Frontend: Intuitive React-based interface for seamless user interaction.
  • Scalable Architecture: Independent deployment and scaling of each microservice.
  • CI/CD Pipeline: Automated testing and deployment using GitHub/GitLab.

🧰 Tech Stack

Core Technologies

  • 🧩 Microservices Architecture
  • 🔄 API REST (HTTP/JSON)
  • 🐳 Docker
  • 🎨 Thymeleaf
  • 🧱 Domain-Driven Design (DDD)

Backend Technologies

  • 🐍 Python / Node.js (for microservices)
  • ☕ JavaScript
  • 🗄️ PostgreSQL / MongoDB (database per service)

Frontend & Design

  • ⚛️ React + JavaScript
  • 🎨 CSS / Tailwind CSS (for responsive design)

Development & DevOps

  • 🔧 Git (GitFlow) with branch protection
  • 🛠️ GitHub / GitLab CI/CD
  • 📄 Swagger for API documentation
  • 🧪 Unit & Integration Testing (JUnit, Jest, etc.)
  • 🔐 Security Practices: Input validation, Circuit Breaker

Methodology

  • 🔄 Agile (Scrum) with 2–10 week sprints
  • 📊 Trello for project management

🧱 Architecture

The project follows an MVC architecture (Model–View–Controller) with a clear separation of concerns:

CodeDev/ ├── microservice-authentication/ # Auth service (JWT, OAuth2) ├── microservice-virtual-judge/ # Code evaluation service ├── microservice-library/ # Document and resource library ├── microservice-pqrs/ # Support and feedback system └── frontend-react/ # Unified React frontend

📽️ Project preview

🔗 Connect with Me

LinkedIn GitHub Email

About

Plataforma de aprendizaje competitiva para la solución de ejercicios de programación

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages