[build-system] requires = ["setuptools>=61", "wheel"] build-backend = "setuptools.build_meta" [project] name = "img_edit_api" version = "0.1.0" description = "FastAPI backend with LangChain logic for HF Spaces" requires-python = ">=3.10" # Core dependencies dependencies = [ "fastapi>=0.115.0", "uvicorn[standard]>=0.30.0", "google-genai", "pillow", "python-dotenv", "replicate", "langchain-core", "langgraph>0.2.27", "langchain[google-genai]", "langgraph-checkpoint-postgres>=0.2.0", "psycopg[binary]>=3.1.18", "boto3", "requests", ] [project.optional-dependencies] dev = [ "pytest>=8.2.0", "ruff>=0.5.0", "black>=24.4.0", "mypy>=1.10.0", "pre-commit>=3.7.0", "types-requests", ] [tool.setuptools.packages.find] where = ["."] include = ["llm*", "server*"] [tool.black] line-length = 150 target-version = ["py310"] [tool.ruff] line-length = 150 target-version = "py310" fix = true unsafe-fixes = true [tool.ruff.lint] select = ["E", "F", "I"] [tool.ruff.format] # Optional — style preferences: quote-style = "double" indent-style = "space" skip-magic-trailing-comma = false docstring-code-format = true [tool.mypy] python_version = "3.10" strict = true [tool.pytest.ini_options] addopts = "-ra -q" testpaths = ["tests"]