[project] name = "safira-ai" dynamic = ["version"] description = "Safira AI — Assistente Jurídico e Corporativo Inteligente" authors = [ { name = "Renato Xavier da Silveira Rosa", email = "renatoxsr@gmail.com" } ] readme = "README.md" license = { file = "LICENSE" } requires-python = ">=3.11" dependencies = [ "Flask==3.0.2", "Flask-Cors==4.0.0", "SQLAlchemy==2.0.29", "psycopg2-binary==2.9.9", "python-dotenv==1.0.1", "requests==2.32.3", "gunicorn==21.2.0", "WeasyPrint==60.1", "Pillow==10.2.0", "PyHanko==0.18.1", "qrcode==7.4.2", "Pillow==10.2.0", "pypandoc==1.13", "python-docx==1.1.2", "python-pptx==0.6.21", "openpyxl==3.1.5", "PyPDF2==3.0.1", "markdown==3.6", ] dev = [ "black==24.4.2", "flake8==7.1.0", "pytest==8.3.2", "ruff==0.6.4", ] [build-system] requires = ["setuptools>=61.0", "wheel", "setuptools_scm"] build-backend = "setuptools.build_meta" [tool.setuptools_scm] write_to = "backend/_version.py" [tool.black] line-length = 88 target-version = ["py311"] [tool.flake8] max-line-length = 88 exclude = [ ".git", "__pycache__", "venv", "build", "dist" ] [tool.ruff] line-length = 88 select = ["E", "F", "I", "W"] ignore = ["E501"] target-version = "py311" #extend-select = ["E","F","I"] exclude = [ ".git", "__pycache__", "venv", "build", "dist" ] [tool.pytest.ini_options] pythonpath = ["backend"] addopts = "-q"