[project] name = "ucl-module-chat" version = "0.1.0" description = "Unofficial chat app for the UCL module catalogue" readme = "README.md" requires-python = ">=3.9" dependencies = [ "beautifulsoup4>=4.12.3", "langchain>=0.3.3", "tqdm>=4.66.5", "langchain-community>=0.3.2", "faiss-cpu>=1.9.0", "langchain-openai>=0.2.3", "gradio>=4.44.1", "jinja2>=3.1.4", "loguru>=0.7.2", "hydra-core>=1.3.2", "gitpython>=3.1.43", ] [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [tool.hatch.build.targets.wheel] packages = ["src/ucl_module_chat"] [tool.uv] dev-dependencies = [ "jupyter>=1.1.1", "black>=24.8.0", "ruff>=0.6.9", "pre-commit>=4.0.1", ] [tool.black] line-length = 88 [tool.ruff] line-length = 88 fix = true exclude = ["src/ucl_module_chat/data_processing/document_templates.py"] [tool.ruff.lint] select = ["E", "F", "I"] fixable = ["ALL"] unfixable = [] [tool.ruff.lint.isort] force-single-line = false combine-as-imports = true