[build-system] requires = ["setuptools>=64", "wheel"] build-backend = "setuptools.build_meta" [project] name = "blokus-gym" version = "0.1.0" description = "A Gymnasium-compatible RL environment for the board game Blokus, with a playable web UI" readme = "README.md" requires-python = ">=3.10" license = {text = "MIT"} authors = [{name = "Blokus Gym Contributors"}] keywords = ["reinforcement-learning", "gymnasium", "blokus", "board-game", "pettingzoo", "flask", "game-ui"] classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Topic :: Scientific/Engineering :: Artificial Intelligence", ] dependencies = [ "numpy>=1.24", "gymnasium>=0.29", "pettingzoo>=1.26", ] [project.optional-dependencies] render = ["matplotlib>=3.7"] ui = ["flask>=3.0"] dev = [ "pytest>=7.4", "pytest-cov>=4.1", "black>=23.7", "ruff>=0.1.0", "mypy>=1.5", ] train = [ "stable-baselines3>=2.2", "torch>=2.0", ] [project.urls] Homepage = "https://github.com/blokus-gym/blokus-gym" Documentation = "https://github.com/blokus-gym/blokus-gym#readme" [project.scripts] blokus-ui = "blokus_ui.app:app" [tool.setuptools.packages.find] where = ["src"] [tool.pytest.ini_options] testpaths = ["tests"] python_files = ["test_*.py"] addopts = "--tb=short -q" [tool.black] line-length = 100 target-version = ["py310"] [tool.ruff] line-length = 100 target-version = "py310" [tool.ruff.lint] select = ["E", "F", "I", "W", "UP", "B", "C4"]