Skip to content

The main repository for the Elan testing system. Includes all parts of the project and installation guide

Notifications You must be signed in to change notification settings

elansteam/Elan-testing-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 

Repository files navigation

Elan testing system

Elan is a modern platform and testing system for holding programming contests. It is like ejudge or Yandex Contest, but a way better.

Why Elan?

  • Modern. Elan has a very nice and intuitive UI based on Google Material Design 3 design system.
  • Powerful. It supports holding IOI and ICPC contests formats, groups creation (could be useful in schools) and online VS Code-like code editor.
  • Self-hosted and open source. You can deploy Elan on your own and enjoy all its advantages, storing all your data locally on your servers. Say "bye" to closed-source Codeforces & Yandex Contests :)

What does Elan consist of?

Elan API (backend)

Well-documented JSON API, written on FastAPI Python framework

Elan Runner

Runner is a low-level engine, a subsystem of Elan, which is responsible for safely running isolated processes that are strictly limited in terms of resource consumption: memory, CPU and real-time, number of threads and file descriptors. Runner is based on the Linux kernel cgroups v2 mechanism. It imposes rlimits and ulimits and keeps track of all system calls of the running process.

Runner is written from scratch on C++, and it has Python API.

About

The main repository for the Elan testing system. Includes all parts of the project and installation guide

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published