pyproject.toml 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. [project]
  2. name = "deepcast"
  3. version = "0.0.1"
  4. description = "Automated podcast generation agent with deep research capabilities, powered by HelloAgents."
  5. authors = [
  6. { name = "JJason" }
  7. ]
  8. readme = "README.md"
  9. license = { text = "MIT" }
  10. requires-python = ">=3.10"
  11. dependencies = [
  12. "fastapi>=0.115.0",
  13. "hello-agents>=0.2.8",
  14. "tavily-python>=0.5.0",
  15. "python-dotenv==1.0.1",
  16. "requests>=2.31.0",
  17. "openai>=1.12.0",
  18. "uvicorn[standard]>=0.32.0",
  19. "ddgs>=9.6.1",
  20. "loguru>=0.7.3",
  21. "huggingface-hub>=1.3.3",
  22. ]
  23. [project.optional-dependencies]
  24. dev = ["mypy>=1.11.1", "ruff>=0.6.1"]
  25. [build-system]
  26. requires = ["setuptools>=73.0.0", "wheel"]
  27. build-backend = "setuptools.build_meta"
  28. [tool.setuptools]
  29. packages = ["src"]
  30. [tool.setuptools.package-data]
  31. "*" = ["py.typed"]
  32. [tool.ruff]
  33. lint.select = [
  34. "E", # pycodestyle
  35. "F", # pyflakes
  36. "I", # isort
  37. "D", # pydocstyle
  38. "D401", # First line should be in imperative mood
  39. "T201",
  40. "UP",
  41. ]
  42. lint.ignore = [
  43. "UP006",
  44. "UP007",
  45. "UP035",
  46. "D417",
  47. "E501",
  48. ]
  49. [tool.ruff.lint.per-file-ignores]
  50. "tests/*" = ["D", "UP"]
  51. [tool.ruff.lint.pydocstyle]
  52. convention = "google"
  53. [dependency-groups]
  54. dev = [
  55. "ruff>=0.12.7",
  56. ]