Skip to main content

frondori-engine

Le contrat commun des environnements de recherche de Frondori, au format PettingZoo.

Ce paquet ne contient aucun environnement. Chacun est un paquet à part, dans son propre dépôt, qu'on installe seulement s'il nous intéresse :

Paquet Environnement
frondori-football football-v0 — football 2D, duel (moteur Rust)
frondori-kitchen kitchen-v0 — cuisine coopérative

Installation

pip install frondori-engine frondori-kitchen

(Pas encore publiés sur PyPI : depuis un clone, pip install -e . dans chaque dépôt.)

Utilisation

import frondori_engine

print(frondori_engine.registered_ids())     # les environnements installés
env = frondori_engine.make("kitchen-v0")    # un pettingzoo.ParallelEnv
observations, infos = env.reset(seed=42)

while env.agents:
    actions = {agent: env.action_space(agent).sample() for agent in env.agents}
    observations, rewards, terminations, truncations, infos = env.step(actions)

Sans serveur, sans réseau, sans token. Compatible avec l'écosystème qui parle PettingZoo (RLlib, TorchRL, CleanRL, SuperSuit...). Pour jouer un match en local dans les conditions de la compétition, ou contre d'autres agents sur le serveur, voir le SDK (frondori-sdk) : Agent(..., local=True).

Ce que contient ce paquet

  • frondori_engine.make / registered_ids / register : le registre. Les environnements installés sont découverts automatiquement par leur entry point (groupe frondori.environments).
  • frondori_engine.scene : le format de rendu commun (render_mode="scene").
  • frondori_engine.wire : le format des spaces et des valeurs sur le réseau.
  • frondori_engine.worker : exécute un environnement pour le serveur de compétition (un processus par match).
  • frondori_engine.testing : les tests du contrat, à appeler depuis les tests de chaque environnement (check_environment("mon-jeu-v0")).

Créer un environnement

Un paquet Python qui dépend de frondori-engine et se déclare dans son pyproject.toml :

[project.entry-points."frondori.environments"]
"mon-jeu-v0" = "mon_paquet:MonJeuEnv"

Guide complet, avec un exemple vérifié : Documentation > Create an Environment, sur le site. L'exemple de ce guide (tests/rps.py) sert aussi d'environnement de test à ce paquet.

Développer / tester

python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
python -m pytest

Publier une version

  1. Mettre à jour version dans pyproject.toml et commiter.
  2. Pousser un tag du même numéro : git tag v0.1.0 && git push origin v0.1.0.

La CI (.github/workflows/ci.yml) teste, construit et publie sur PyPI ; elle refuse un tag qui ne correspond pas à la version. Publication par Trusted Publishing, sans token : à configurer une fois sur PyPI (projet frondori-engine > Publishing > trusted publisher GitHub : ce dépôt, workflow ci.yml, environnement pypi).

À publier EN PREMIER : les environnements et le SDK en dépendent.

Licence : MIT.

Metadata

Release files for frondori-engine 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for frondori-engine 0.4.0
File Size Uploaded
frondori_engine-0.4.0.tar.gz 15.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for frondori-engine 0.4.0
File Interpreter ABI Platform
frondori_engine-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 29.4 kB

Release files / frondori_engine-0.4.0.tar.gz

Download URL frondori_engine-0.4.0.tar.gz
Size 15.7 kB
Tags Source
SHA-256 checksum
How to use checksums
3ccc5668eb7a1ceb4796e3a5f8027f5ebcfe45ea13fa244ae60ae9860c95f999
BLAKE2b-256 checksum
How to use checksums
af90d1a943cb693d5063362ef6ce15c9addb48f4d40feac225a92161010f7324
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.

Transparency log

Release files / frondori_engine-0.4.0-py3-none-any.whl

Download URL frondori_engine-0.4.0-py3-none-any.whl
Size 13.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e4e4966f1aa731b0a1ec647dca40fa3b24cd0c0d12dab460272cacf2a8dbb5f5
BLAKE2b-256 checksum
How to use checksums
c290049f302e31eff076529d9ac593a6e76e3d5919052956272440f79cbaa32e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page