Saltar a contenido

Primeros pasos con el desarrollo de omegaUp

¡Bienvenido! Esta guía lo ayudará a comenzar a contribuir con omegaUp, una plataforma educativa gratuita que ayuda a mejorar las habilidades de programación.

¿Qué es omegaUp?

omegaUp es una plataforma de programación educativa utilizada por decenas de miles de estudiantes y profesores en América Latina. Proporciona:

  • Resolución de problemas: Miles de problemas de programación con evaluación automática
  • Concursos: organizar concursos de programación.
  • Cursos: rutas de aprendizaje estructuradas
  • Entrenamiento: Practicar problemas organizados por tema y dificultad

Antes de comenzar

Si eres nuevo en omegaUp, te recomendamos:

  1. Experimente la plataforma: visite omegaUp.com, cree una cuenta y resuelva algunos problemas
  2. Más información sobre nosotros: Explore omegaup.org para obtener más información sobre nuestra organización
  3. Comprenda el código base: revise la Descripción general de la arquitectura para comprender cómo funciona omegaUp.

Ruta de inicio rápido

Descripción general del entorno de desarrollo

omegaUp utiliza Docker para el desarrollo local. A alto nivel:

  • Web + API: controladores PHP 8.1 y DAO sobre MySQL 8 (MVC clásico; API JSON)
  • Juez: Go calificador, corredores y minijail sandbox: un servicio separado (omegaup/quark) al que el backend llama a través de HTTP
  • UI del navegador: Vue 2.7 componentes de un solo archivo, TypeScript, Bootstrap 4, renderizados dentro de un shell de servidor Twig 3
  • Problema de almacenamiento: gitserver y diseño zip/case como se documenta en Características → Problemas

Dónde viven las cosas en el repositorio (mapa rápido)

Área Ruta (en el repositorio principal)
API HTTP/reglas comerciales frontend/server/src/Controllers/
Acceso a la base de datos frontend/server/src/DAO/
Migraciones frontend/database/
Mecanografiado/Vue frontend/www/js/
Plantillas heredadas / i18n frontend/templates/
Pruebas de API PHPUnit frontend/tests/controllers/
Ciprés E2E cypress/e2e/

Artículos (contexto arquitectónico)

Utilice un navegador actual y actual (Chrome, Firefox, Safari o Edge). El sitio es solo HTTPS. Las versiones muy antiguas de Internet Explorer no son compatibles.

Cuentas de Desarrollo

Cuando configure su entorno local, tendrá acceso a dos cuentas preconfiguradas:

Nombre de usuario Contraseña Rol
omegaup omegaup Administrador
user user Usuario habitual

Próximos pasos

  1. Configura tu entorno de desarrollo - Ejecuta Docker y clona el repositorio
  2. Lea la guía de contribución - Conozca el flujo de trabajo para enviar cambios
  3. Explora la arquitectura - Comprenda cómo está estructurado omegaUp
  4. Revisar las pautas de codificación - Conozca nuestros estándares de codificación

Recursos


¿Listo para empezar? Dirígete a Configuración de desarrollo para comenzar.