[build-system] requires = ["flit_core >= 4.1.0, < 5"] build-backend = "flit_core.buildapi" [tool.flit.module] name = "great_ai" # Module's import name/local folder name [project] name = "great-ai" # PyPI package name dynamic = ["version", "description"] readme = "README.md" authors = [{ name = "AndrĂ¡s Schmelczer", email = "andras@schmelczer.dev" }] license = { file = "LICENSE" } classifiers = [ "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Topic :: Software Development :: Libraries :: Python Modules", "Typing :: Typed", "Development Status :: 3 - Alpha", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: English", ] keywords = ["SE4ML", "MLOps", "AI engineering", "general", "robust", "end-to-end", "automated", "trustworthy", "ai", "deployment"] requires-python = ">= 3.12" dependencies = [ "scikit-learn >= 1.9.1, < 2", "matplotlib >= 3.11.2, < 4", "numpy >= 2.5.4, < 3", "nbconvert >= 7.17.2, < 8", "ipython >= 9.17.1, < 10", "unidecode >= 1.4.0, < 2", "syntok >= 1.4.4, < 2", "langcodes[data] >= 3.5.1, < 4", "langdetect >= 1.0.9, < 2", "tinydb >= 4.9.0, < 5", "boto3 >= 1.43.119, < 2", "plotly >= 7.1.0, < 8", "pandas >= 3.1.0, < 4", "dash >= 4.4.1, < 5", "fastapi >= 0.162.0, < 1", "uvicorn[standard] >= 0.54.0, < 1", "a2wsgi >= 1.10.10, < 2", "watchdog >= 6.0.0, < 7", "typeguard >= 4.6.0, < 5", "pydantic >= 2.14.1, < 3", "pymongo >= 4.19.0, < 5", "dill >= 0.4.1, < 1", "tqdm >= 4.70.1, < 5", "httpx >= 0.28.1, < 1", "filelock >= 4.2.4, < 5", ] [project.optional-dependencies] dev = [ "flit >= 4.1.0, < 5", "mkdocs >= 1.6.1, < 2", "mkdocstrings[python] >= 1.0.8, < 2", "mkdocs-material >= 9.8.0, < 10", "mkdocs-jupyter >= 0.27.0, < 1", "mkdocs-git-revision-date-localized-plugin >= 1.6.2, < 2", "autoflake >= 2.4.0, < 3", "isort >= 9.0.2, < 10", "black[jupyter] >= 26.10.1, < 27", "mypy >= 2.4.0, < 3", "flake8 >= 7.4.1, < 8", "tox >= 4.67.2, < 5", "pytest >= 9.1.1, < 10", "pytest-cov >= 7.1.0, < 8", "pytest-asyncio >= 1.4.1, < 2", ] [tool.pytest.ini_options] # `...` in doctests (e.g. third-party exception messages that drift between # dependency versions) is treated as a wildcard rather than a literal. doctest_optionflags = ["ELLIPSIS"] [project.urls] Documentation = "https://great-ai.scoutinscience.com" GitHub = "https://github.com/schmelczer/great-ai" DockerHub = "https://hub.docker.com/repository/docker/schmelczera/great-ai" [project.scripts] great_ai = "great_ai.__main__:main" great-ai = "great_ai.__main__:main" large_file = "great_ai.large_file.__main__:main" large-file = "great_ai.large_file.__main__:main"