Skip to content

Getting Started with omegaUp Development

Welcome! This guide will help you get started with contributing to omegaUp, a free educational platform that helps improve programming skills.

What is omegaUp?

omegaUp is an educational programming platform used by tens of thousands of students and teachers in Latin America. It provides:

  • Problem Solving: Thousands of programming problems with automatic evaluation
  • Contests: Organize programming competitions
  • Courses: Structured learning paths
  • Training: Practice problems organized by topic and difficulty

Before You Begin

If you're new to omegaUp, we recommend:

  1. Experience the Platform: Visit omegaUp.com, create an account, and solve a few problems
  2. Learn About Us: Explore omegaup.org to learn more about our organization
  3. Understand the Codebase: Review the Architecture Overview to understand how omegaUp works

Quick Start Path

Development Environment Overview

omegaUp uses Docker for local development. The main components include:

  • Frontend: PHP + MySQL (MVC architecture)
  • Backend: Go-based grader and runner system
  • Frontend UI: Vue.js + TypeScript + Bootstrap 4
  • Database: MySQL 8.0.39

Development Accounts

When you set up your local environment, you'll have access to two pre-configured accounts:

Username Password Role
omegaup omegaup Administrator
user user Regular user

Next Steps

  1. Set up your development environment - Get Docker running and clone the repository
  2. Read the contributing guide - Learn the workflow for submitting changes
  3. Explore the architecture - Understand how omegaUp is structured
  4. Review coding guidelines - Learn our coding standards

Resources


Ready to start? Head to Development Setup to begin!