An open API service indexing awesome lists of open source software.

https://github.com/bbc2/orchamp

Experimental championship analyzer
https://github.com/bbc2/orchamp

Last synced: about 2 months ago
JSON representation

Experimental championship analyzer

Awesome Lists containing this project

README

          

# Orchamp

## ☣️ Hazardous material

This project is still in its infancy. It is not finished and it may even turn out to be
stupid. For example, many questions haven't been answered: Is it useful? Is it the right
approach for the problem? Do the technology choices make sense?

## Introduction

**Orchamp** is a championship analyzer that uses constraint programming to explore all possible outcomes in the league.

## Usage

### Web application

Go to the web application, select a league (year, division, phase), and see current standings.

### CLI

To analyze possible future positions of a given team in the championship:

```bash
orchamp \
--rules tests/orchamp/cli/data/rules.json \
--state <(orchamp-get parse tests/orchamp_get/data/standings.html) \
analyze-team --team team_b
```

This outputs JSON in the following form:

```json
{
"team_id": "team_b",
"team_name": "Team B",
"best_position": 1,
"worst_position": 5,
"best_scenario": {
...
},
"worst_scenario": {
...
}
}
```

## Development

### Checks

Run all checks (lint + tests):

```bash
just check
```

### Dev server

Run the dev server on http://localhost:8000:

```bash
just run
```

### Translations

To add or update translatable strings:

- Run `just update-translations`
- Edit the `.po` files under `src/orchamp_web/locales/`
- Run `just compile-translations`