[project] name = "flux" authors = [ { name = "Black Forest Labs", email = "support@blackforestlabs.ai" }, ] description = "Inference codebase for FLUX" readme = "README.md" requires-python = ">=3.10" license = { file = "LICENSE.md" } dynamic = ["version"] dependencies = [ "torch == 2.5.1", "torchvision", "einops", "fire >= 0.6.0", "huggingface-hub", "safetensors", "sentencepiece", "transformers", "tokenizers", "protobuf", "requests", "invisible-watermark", "ruff == 0.6.8", ] [project.optional-dependencies] streamlit = [ "streamlit", "streamlit-drawable-canvas", "streamlit-keyup", ] gradio = [ "gradio", ] all = [ "flux[streamlit]", "flux[gradio]", ] [project.scripts] flux = "flux.cli:app" [build-system] build-backend = "setuptools.build_meta" requires = ["setuptools>=64", "wheel", "setuptools_scm>=8"] [tool.ruff] line-length = 110 target-version = "py310" extend-exclude = ["/usr/lib/*"] [tool.ruff.lint] ignore = [ "E501", # line too long - will be fixed in format ] [tool.ruff.format] quote-style = "double" indent-style = "space" line-ending = "auto" skip-magic-trailing-comma = false docstring-code-format = true exclude = [ "src/flux/_version.py", # generated by setuptools_scm ] [tool.ruff.lint.isort] combine-as-imports = true force-wrap-aliases = true known-local-folder = ["src"] known-first-party = ["flux"] [tool.pyright] include = ["src"] exclude = [ "**/__pycache__", # cache directories "./typings", # generated type stubs ] stubPath = "./typings" [tool.tomlsort] in_place = true no_sort_tables = true spaces_before_inline_comment = 1 spaces_indent_inline_array = 2 trailing_comma_inline_array = true sort_first = [ "project", "build-system", "tool.setuptools", ] # needs to be last for CI reasons [tool.setuptools_scm] write_to = "src/flux/_version.py" parentdir_prefix_version = "flux-" fallback_version = "0.0.0" version_scheme = "post-release"