Files
muxplex/pyproject.toml
T
2026-04-13 14:56:42 -07:00

69 lines
1.9 KiB
TOML

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "muxplex"
version = "0.3.4"
description = "Web-based tmux session dashboard — access all your tmux sessions from any browser"
readme = "README.md"
license = { text = "MIT" }
authors = [{name = "Brian Krabach", email = "brian@krabach.com"}]
classifiers = [
"Development Status :: 4 - Beta",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Topic :: System :: Systems Administration",
"Topic :: Terminals :: Terminal Emulators/X Terminals",
"Environment :: Web Environment",
"Framework :: FastAPI",
]
keywords = ["tmux", "terminal", "dashboard", "web", "session-manager"]
requires-python = ">=3.11"
dependencies = [
"fastapi>=0.115.0",
"uvicorn[standard]>=0.30.0",
"aiofiles>=23.0",
"websockets>=11.0",
"python-pam>=1.8.4",
"six>=1.16.0", # undeclared dep of python-pam (needed on macOS clean envs)
"itsdangerous>=2.1.0",
"python-multipart>=0.0.9",
"httpx>=0.27.0",
"cryptography",
]
[project.optional-dependencies]
dev = [
"pytest>=8.0.0",
"pytest-asyncio>=0.23.0",
"beautifulsoup4>=4.12",
]
[project.scripts]
muxplex = "muxplex.cli:main"
[project.urls]
Repository = "https://github.com/bkrabach/muxplex"
Issues = "https://github.com/bkrabach/muxplex/issues"
[tool.hatch.build.targets.wheel]
packages = ["muxplex"]
exclude = ["muxplex/tests", "muxplex/frontend/tests"]
[tool.pytest.ini_options]
testpaths = ["muxplex/tests"]
asyncio_mode = "auto"
addopts = "--import-mode=importlib -m 'not integration'"
markers = [
"integration: marks tests as integration tests requiring real tmux (deselect with '-m not integration')",
]
[dependency-groups]
dev = [
"pytest-timeout>=2.4.0",
]