aboutsummaryrefslogtreecommitdiffstats
path: root/packages/meshbay-hub/pyproject.toml
blob: 5487a6a5acac7b30e2ed23525d3fedbab7819a1a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[project]
name = "meshbay-hub"
version = "0.1.0"
description = "MeshBay Hub — identity authority and group registry server"
requires-python = ">=3.12"
dependencies = [
    "meshbay-common>=0.1.0",
    "fastapi>=0.115",
    "uvicorn[standard]>=0.30",
    "sqlalchemy>=2.0",
    "alembic>=1.13",
    "asyncpg>=0.30",        # PostgreSQL async driver
    "aiosqlite>=0.20",      # SQLite async (tests + dev without PostgreSQL)
    "httpx>=0.28",
    "slowapi>=0.1",         # rate limiting
    "PyJWT>=2.9",           # JWT EdDSA (also in meshbay-common but explicit here)
    "websockets>=12.0",     # hub→node revocation push
]

[project.optional-dependencies]
dev = ["pytest>=8", "pytest-asyncio>=0.24", "ruff>=0.6", "httpx>=0.28"]

[project.scripts]
meshbay-hub = "meshbay_hub.daemon:main"

[tool.hatch.build.targets.wheel]
packages = ["src/meshbay_hub"]

# RPM/DEB: meshbay-hub
# Systemd service: meshbay-hub.service
# Config: /etc/meshbay/hub.conf
# Data: /var/lib/meshbay/hub/