[project] name = "world-simulator" version = "0.1.0" description = "A Python-first AI civilization sandbox foundation for LLM-driven NPC simulations." readme = "README.md" requires-python = ">=3.11" license = { text = "MIT" } authors = [{ name = "World Simulator Team" }] dependencies = [ "gradio>=6.17.3", "openai>=1.0", ] [project.scripts] world-simulator = "world_simulator.__main__:main" [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [dependency-groups] deploy = [ "aiohttp>=3.14.1", "modal>=1.4.3", ] dev = [ "pytest>=8.0", "ruff>=0.8", "mypy>=1.13", ] [tool.ruff] line-length = 100 target-version = "py311" extend-exclude = ["tool_calculator_example.py"] [tool.ruff.lint] select = ["E", "F", "I", "N", "UP", "B", "C4", "SIM", "RUF"] [tool.mypy] python_version = "3.11" strict = true mypy_path = "src" [tool.pytest.ini_options] addopts = "--basetemp=tmp/pytest" testpaths = ["tests"] pythonpath = ["src"] [tool.hatch.build.targets.wheel] packages = ["src/world_simulator"]