EjStand is a simple and configurable web standings daemon for ejudge contest management system. It's intended to be used in situations when standing contains results from different contests or when standing needs some additional display options not supported by ejudge.
EjStand is written in Haskell and can be easily built with Stack tool.
cd ejstand
stack build
If you wish to install EjStand locally (to ~/.local/bin
), you can use
stack install
As for recommended option, you should make a package for your Linux
distribution on your own. As an example there is ArchLinux sample package
source in dist
directory.
EjStand has two different types of configuration files: global and local.
Global configuration file is unique and contains options which are applied for all standings served by EjStand. For example, two of the most important options in that file are hostname/IP and port to bind an application web server.
Local configuration files define settings for different standing tables and therefore aren't unique.
Examples with detailed descriptions for each option are presented in the
conf
directory. You can use these examples as templates for your own EjStand
instance.
Personally i'd start my own EjStand configuration with
sudo install -Dm644 conf/global.cfg.example /etc/ejstand.cfg
"${EDITOR}" /etc/ejstand.cfg
Most of the time it makes sense to set up EjStand next to ejudge, and that means that you're probably want some kind of directory (for example, /ejstand) on your Apache/nginx/whatever-you-use-webserver to be proxied to EjStand.
This article can help you to setup your global server in a proper way.
You must be kiddin'. There are no bugs in this software. But if you think there are, you can write your issue here. Please describe all steps to reproduce your bug, your EjStand version and ejudge files which are parsed (if possible).
There are no strict policies about contributing and all your patches are welcomed. Your pull requests must meet only three requirements:
- the patch is sane and doesn't break any existing features;
- you agree with project license, and allow to distribute your code under its conditions;
- the code is well-formatted with
utils/restyle_code.sh
script or Brittany with the same options.
This project is licensed under the GNU AGPL license version 3. See LICENSE file for more details.
EjStand uses a lot of third-party libraries licensed under permissive open
source licenses. You can review third-party licenses in third-party/licenses
directory.