Metadata-Version: 2.4
Name: nexus-gym
Version: 0.1.1.dev19
Summary: A Gymnasium environment for the Nexus Platformer game with WebSocket communication
Author-email: chrisjcc <chrisjcc@example.com>
License: MIT
Project-URL: Homepage, https://github.com/example/nexus-gym
Project-URL: Documentation, https://github.com/example/nexus-gym#readme
Project-URL: Repository, https://github.com/example/nexus-gym
Keywords: reinforcement-learning,gymnasium,game,platformer,stable-baselines3
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Games/Entertainment
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: gymnasium>=0.29.0
Requires-Dist: numpy>=1.21.0
Requires-Dist: websockets>=11.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
Requires-Dist: black>=23.0.0; extra == "dev"
Requires-Dist: isort>=5.12.0; extra == "dev"
Requires-Dist: mypy>=1.0.0; extra == "dev"
Requires-Dist: build>=1.3.0; extra == "dev"
Provides-Extra: sb3
Requires-Dist: stable-baselines3>=2.0.0; extra == "sb3"
Requires-Dist: torch>=2.0.0; extra == "sb3"
Requires-Dist: wandb>=0.15.0; extra == "sb3"
Requires-Dist: python-dotenv>=1.0.0; extra == "sb3"
Requires-Dist: hydra-core>=1.3.2; extra == "sb3"
Requires-Dist: huggingface_hub>=0.14.0; extra == "sb3"
Provides-Extra: all
Requires-Dist: nexus-gym[dev,sb3]; extra == "all"

---
title: Nexus Gym
emoji: 🚀
colorFrom: red
colorTo: red
sdk: docker
app_port: 7860
app_file: main_train.py
tags:
- fastapi
- reinforcement-learning
- gymnasium
pinned: false
short_description: NEXUS - an AI-powered platformer game with procedural level
license: apache-2.0
---

# Nexus Gym

A Gymnasium environment for the Nexus Platformer game, capable of training reinforcement learning agents via WebSocket communication.

## Installation

```bash
pip install nexus-gym
```

## Release Process

This project uses `setuptools_scm` for versioning, meaning the package version is derived automatically from Git tags.

### 1. Tag the Release
Create a new tag for the version you want to release (e.g., v0.1.0).

```bash
git tag v0.1.0
git push origin v0.1.0
# Or to push all tags: git push origin --tags
```

**Note:** The `make release` command will fail if your git repository has uncommitted changes. Ensure you are in a clean state.

### 2. Build the Package
This command runs the `npm` build for the game simulation and packages the Python project.

```bash
make release
```

### 3. Publish to TestPyPI (Optional)
It is recommended to upload to TestPyPI first to verify everything looks correct.

```bash
make publish-test
```

### 4. Publish to PyPI
When you are ready to publish the official release:

```bash
make publish
```
