{
  "townlight_access-0.5.0.dist-info": {
    "Name": [
      "townlight-access"
    ],
    "Version": [
      "0.5.0"
    ],
    "Requires-Python": [
      ">=3.11"
    ],
    "Requires-Dist": [
      "fastapi<1.0.0,>=0.115.0",
      "psycopg2-binary<3.0.0,>=2.9.0",
      "sqlalchemy<3.0.0,>=2.0.0",
      "townlight-core==1.3.0.dev2",
      "uvicorn[standard]<1.0.0,>=0.30.0",
      "build<2.0.0,>=1.2.0; extra == 'dev'",
      "httpx<1.0.0,>=0.27.0; extra == 'dev'",
      "pytest<9.0.0,>=8.0.0; extra == 'dev'",
      "ruff==0.15.21; extra == 'dev'"
    ],
    "License": [],
    "License-Expression": [
      "AGPL-3.0-only"
    ]
  },
  "townlight_code-1.0.9.dist-info": {
    "Name": [
      "townlight-code"
    ],
    "Version": [
      "1.0.9"
    ],
    "Requires-Python": [
      ">=3.11"
    ],
    "Requires-Dist": [
      "alembic<2.0.0,>=1.13.0",
      "asyncpg<1.0.0,>=0.29.0",
      "fastapi<1.0.0,>=0.115.0",
      "psycopg2-binary<3.0.0,>=2.9.0",
      "pymupdf<2.0.0,>=1.26.0",
      "sqlalchemy<3.0.0,>=2.0.0",
      "townlight-core==1.3.0.dev2",
      "uvicorn[standard]<1.0.0,>=0.30.0",
      "build<2.0.0,>=1.2.0; extra == 'dev'",
      "httpx<1.0.0,>=0.27.0; extra == 'dev'",
      "pytest-asyncio<1.0.0,>=0.23.0; extra == 'dev'",
      "pytest<9.0.0,>=8.0.0; extra == 'dev'",
      "ruff==0.15.21; extra == 'dev'"
    ],
    "License": [
      "AGPL-3.0-only"
    ],
    "License-Expression": []
  },
  "townlight_core-1.3.0.dev2.dist-info": {
    "Name": [
      "townlight-core"
    ],
    "Version": [
      "1.3.0.dev2"
    ],
    "Requires-Python": [
      ">=3.11"
    ],
    "Requires-Dist": [
      "packaging>=24.0",
      "fastapi>=0.135.0",
      "uvicorn[standard]>=0.44.0",
      "sqlalchemy[asyncio]>=2.0.49",
      "asyncpg>=0.31.0",
      "alembic>=1.18.0",
      "pgvector>=0.4.2",
      "pydantic>=2.12.0",
      "pydantic-settings>=2.13.0",
      "fastapi-users[sqlalchemy]>=15.0.0",
      "python-jose[cryptography]>=3.5.0",
      "passlib[bcrypt]>=1.7.4",
      "celery>=5.6.0",
      "croniter>=2.0.0",
      "redis<8.0.0,>=5.0.0",
      "httpx>=0.28.0",
      "pdfplumber>=0.11.0",
      "python-docx>=1.1.0",
      "openpyxl>=3.1.0",
      "beautifulsoup4>=4.12.0",
      "Pillow>=11.0.0",
      "pytesseract>=0.3.10",
      "aiofiles>=24.1.0",
      "PyJWT>=2.8.0",
      "regex>=2024.0.0",
      "anthropic>=0.40.0; extra == \"anthropic\"",
      "openai>=1.50.0; extra == \"openai\"",
      "build>=1.2.0; extra == \"dev\"",
      "psycopg2-binary>=2.9.0; extra == \"dev\"",
      "pytest>=9.0.0; extra == \"dev\"",
      "pytest-asyncio>=1.0.0; extra == \"dev\"",
      "respx>=0.22.0; extra == \"dev\"",
      "ruff==0.15.22; extra == \"dev\"",
      "testcontainers[postgres]>=4.9.0; extra == \"dev\"",
      "openai>=1.50.0; extra == \"dev\"",
      "anthropic>=0.40.0; extra == \"dev\""
    ],
    "License": [],
    "License-Expression": [
      "AGPL-3.0-only"
    ]
  },
  "townlight_inspections-0.3.0+dev.2.dist-info": {
    "Name": [
      "townlight-inspections"
    ],
    "Version": [
      "0.3.0+dev.2"
    ],
    "Requires-Python": [
      ">=3.11"
    ],
    "Requires-Dist": [
      "alembic<2.0.0,>=1.14.0",
      "fastapi<1.0.0,>=0.115.0",
      "psycopg2-binary<3.0.0,>=2.9.0",
      "sqlalchemy<3.0.0,>=2.0.0",
      "townlight-core==1.3.0.dev2",
      "uvicorn[standard]<1.0.0,>=0.30.0",
      "build<2.0.0,>=1.2.0; extra == 'dev'",
      "httpx<1.0.0,>=0.27.0; extra == 'dev'",
      "psycopg2-binary<3.0.0,>=2.9.0; extra == 'dev'",
      "pytest<9.0.0,>=8.0.0; extra == 'dev'",
      "ruff==0.15.22; extra == 'dev'"
    ],
    "License": [
      "AGPL-3.0-only"
    ],
    "License-Expression": []
  },
  "townlight_meetings-1.0.5.dist-info": {
    "Name": [
      "townlight-meetings"
    ],
    "Version": [
      "1.0.5"
    ],
    "Requires-Python": [
      ">=3.11"
    ],
    "Requires-Dist": [
      "celery[redis]<6.0.0,>=5.4.0",
      "fastapi<1.0.0,>=0.115.0",
      "httpx<1.0.0,>=0.27.0",
      "psycopg2-binary<3.0.0,>=2.9.0",
      "pyjwt<3.0.0,>=2.8.0",
      "townlight-core==1.3.0.dev2",
      "uvicorn[standard]<1.0.0,>=0.30.0",
      "httpx<1.0.0,>=0.27.0; extra == 'dev'",
      "pytest-asyncio<1.0.0,>=0.23.0; extra == 'dev'",
      "pytest<9.0.0,>=8.0.0; extra == 'dev'"
    ],
    "License": [
      "AGPL-3.0-only"
    ],
    "License-Expression": []
  },
  "townlight_notice-0.3.0.dist-info": {
    "Name": [
      "townlight-notice"
    ],
    "Version": [
      "0.3.0"
    ],
    "Requires-Python": [
      ">=3.11"
    ],
    "Requires-Dist": [
      "fastapi<1.0.0,>=0.115.0",
      "sqlalchemy<3.0.0,>=2.0.0",
      "townlight-core==1.3.0.dev2",
      "uvicorn[standard]<1.0.0,>=0.30.0",
      "build<2.0.0,>=1.2.0; extra == 'dev'",
      "httpx<1.0.0,>=0.27.0; extra == 'dev'",
      "psycopg2-binary<3.0.0,>=2.9.0; extra == 'dev'",
      "pytest-cov<7.0.0,>=5.0.0; extra == 'dev'",
      "pytest<9.0.0,>=8.0.0; extra == 'dev'",
      "ruff==0.15.21; extra == 'dev'"
    ],
    "License": [],
    "License-Expression": [
      "AGPL-3.0-only"
    ]
  },
  "townlight_permitting-0.3.0+dev.2.dist-info": {
    "Name": [
      "townlight-permitting"
    ],
    "Version": [
      "0.3.0+dev.2"
    ],
    "Requires-Python": [
      ">=3.11"
    ],
    "Requires-Dist": [
      "alembic<2.0.0,>=1.13.0",
      "fastapi<1.0.0,>=0.115.0",
      "sqlalchemy<3.0.0,>=2.0.0",
      "townlight-core==1.3.0.dev2",
      "uvicorn[standard]<1.0.0,>=0.30.0",
      "build<2.0.0,>=1.2.0; extra == 'dev'",
      "httpx<1.0.0,>=0.27.0; extra == 'dev'",
      "psycopg2-binary<3.0.0,>=2.9.0; extra == 'dev'",
      "pymupdf<2,>=1.24; extra == 'dev'",
      "pytest<9.0.0,>=8.0.0; extra == 'dev'",
      "ruff==0.15.22; extra == 'dev'"
    ],
    "License": [
      "AGPL-3.0-only"
    ],
    "License-Expression": []
  },
  "townlight_planning-0.4.0.dev2.dist-info": {
    "Name": [
      "townlight-planning"
    ],
    "Version": [
      "0.4.0.dev2"
    ],
    "Requires-Python": [
      ">=3.11"
    ],
    "Requires-Dist": [
      "fastapi<1.0.0,>=0.115.0",
      "psycopg2-binary<3.0.0,>=2.9.0",
      "sqlalchemy<3.0.0,>=2.0.0",
      "townlight-core==1.3.0.dev2",
      "uvicorn[standard]<1.0.0,>=0.30.0",
      "build<2.0.0,>=1.2.0; extra == 'dev'",
      "httpx<1.0.0,>=0.27.0; extra == 'dev'",
      "psycopg2-binary<3.0.0,>=2.9.0; extra == 'dev'",
      "pytest<9.0.0,>=8.0.0; extra == 'dev'",
      "ruff==0.15.22; extra == 'dev'"
    ],
    "License": [],
    "License-Expression": [
      "AGPL-3.0-only"
    ]
  },
  "townlight_records-1.8.0.dev2.dist-info": {
    "Name": [
      "townlight-records"
    ],
    "Version": [
      "1.8.0.dev2"
    ],
    "Requires-Python": [
      ">=3.12"
    ],
    "Requires-Dist": [
      "fastapi>=0.135.0",
      "uvicorn[standard]>=0.44.0",
      "sqlalchemy[asyncio]>=2.0.49",
      "asyncpg>=0.31.0",
      "alembic>=1.18.0",
      "pgvector>=0.4.2",
      "pydantic>=2.12.0",
      "pydantic-settings>=2.13.0",
      "fastapi-users[sqlalchemy]>=15.0.0",
      "python-jose[cryptography]>=3.5.0",
      "passlib[bcrypt]>=1.7.4",
      "celery>=5.6.0",
      "townlight-core==1.3.0.dev2",
      "redis<8.0.0,>=5.0.0",
      "httpx>=0.28.0",
      "pdfplumber>=0.11.0",
      "python-docx>=1.1.0",
      "openpyxl>=3.1.0",
      "beautifulsoup4>=4.12.0",
      "Pillow>=11.0.0",
      "pytesseract>=0.3.10",
      "aiofiles>=24.1.0",
      "PyJWT>=2.8.0",
      "regex>=2024.0.0",
      "pytest>=9.0.0; extra == \"dev\"",
      "pytest-asyncio>=1.0.0; extra == \"dev\"",
      "respx>=0.22.0; extra == \"dev\"",
      "ruff==0.15.21; extra == \"dev\"",
      "psycopg2-binary>=2.9.0; extra == \"dev\""
    ],
    "License": [],
    "License-Expression": [
      "AGPL-3.0-only"
    ]
  },
  "townlight_runtime-0.2.0.dist-info": {
    "Name": [
      "townlight-runtime"
    ],
    "Version": [
      "0.2.0"
    ],
    "Requires-Python": [
      ">=3.11"
    ],
    "Requires-Dist": [
      "sqlalchemy>=2.0",
      "fastapi>=0.135.0",
      "uvicorn>=0.44.0"
    ],
    "License": [],
    "License-Expression": [
      "AGPL-3.0-only"
    ]
  },
  "townlight_zoning-0.2.3.dist-info": {
    "Name": [
      "townlight-zoning"
    ],
    "Version": [
      "0.2.3"
    ],
    "Requires-Python": [
      ">=3.11"
    ],
    "Requires-Dist": [
      "fastapi<1.0.0,>=0.115.0",
      "townlight-core==1.3.0.dev2",
      "uvicorn[standard]<1.0.0,>=0.30.0",
      "build<2.0.0,>=1.2.0; extra == 'dev'",
      "httpx<1.0.0,>=0.27.0; extra == 'dev'",
      "psycopg2-binary<3.0.0,>=2.9.0; extra == 'dev'",
      "pytest<9.0.0,>=8.0.0; extra == 'dev'",
      "ruff==0.15.22; extra == 'dev'"
    ],
    "License": [
      "AGPL-3.0-only"
    ],
    "License-Expression": []
  }
}
