This project has been archived by its maintainers, and is no longer receiving any updates.
🛠️ grand-challenge-forge
A utility that generates distributable items that help challenge organizers set up their challenge more easily on Grand-Challenge.org.
Install
Install via PyPi:
pip install grand-challenge-forge
grand-challenge-forge --help
📦 Challenge packs
A challenge pack consists of challenge-tailored examples for the following:
- A script to automate uploading data to an archive
- A submission algorithm that can be submitted to a challenge phase
- An evaluation method that evaluates algorithm submissions and generates performance metrics for ranking
Usage
PACK generation
grand-challenge-forge pack pack-context.json
Will use the context found in pack-context.json and generate a pack at the current working directory in
a directory dist/ (default).
Alternatively, you generate a pack by providing a JSON string directly:
grand-challenge-forge pack --output-dir /tmp '{ "challenge": { "slug": "a-slug"...'
This will output a pack directory in the /tmp directory.
Via API pack generation can be done via:
from grand_challenge_forge.forge import generate_challenge_pack
from Pathlib import Path
generate_challenge_pack(
context={"challenge": {...}}
output_path=Path("dist/"),
delete_existing=False,
)
ALGORITHM-TEMPLATE generation
grand-challenge-forge algorithm algorithm-context.json
Will use the context found in algorithm-context.json and generate a algorith-template directory at the current working directory in a directory dist/ (default).
Alternatively, you generate an algorithm template by providing a JSON string directly:
grand-challenge-forge algorithm --output-dir /tmp '{ "algorithm": { ... } }'
This will output an algorithm-template directory in the /tmp directory.
Via API the algorithm-template generation can be done via:
from grand_challenge_forge.forge import generate_algorithm_template
from Pathlib import Path
generate_algorithm_template(
context={"algorithm": { ... }}
output_path=Path("dist/"),
delete_existing=False,
)
🏗️ Development
Install locally
Install grand-challenge-forge locally (requires poetry):
git clone https://github.com/DIAGNijmegen/rse-grand-challenge-forge.git
cd rse-grand-challenge-forge
poetry install
poetry run grand-challenge-forge --help
Pre-commit hooks
Several linters and stylers run to check the formatting during continuous integration. Ensure they are run before committing by installing pre-commit.
Running Tests
use tox to run all tests across all supported python versions:
pip install tox
tox
Dependencies
Under the hood grand-challenge-forge uses:
Metadata
Release files for grand-challenge-forge 0.7.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| grand_challenge_forge-0.7.5.tar.gz | 32.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| grand_challenge_forge-0.7.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 80.3 kB
Release files / grand_challenge_forge-0.7.5.tar.gz
| Download URL | grand_challenge_forge-0.7.5.tar.gz |
|---|---|
| Size | 32.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4bd57201f46ae0965eaa526393055819550a0f9464178724d9645dfd190c667d
|
|
BLAKE2b-256 checksum How to use checksums |
b5a991a9793f59dd53947c96b81b4ccaf1ce53aa215fc56621397628e8dcd91a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.3 CPython/3.11.13 Linux/6.11.0-1018-azure
|
Release files / grand_challenge_forge-0.7.5-py3-none-any.whl
| Download URL | grand_challenge_forge-0.7.5-py3-none-any.whl |
|---|---|
| Size | 48.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
aa7c2f6de8233af92e1f03a5bf13bdc5e7c0265981f5408881c5e9376c0b6bad
|
|
BLAKE2b-256 checksum How to use checksums |
708daeb3412e9086ca020e39418fee90715b5fd675884baa3cb3d7066b746762
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.3 CPython/3.11.13 Linux/6.11.0-1018-azure
|