open-notebook/pyproject.toml

84 lines
1.9 KiB
TOML

[project]
name = "open-notebook"
version = "0.3.2"
description = "An open source implementation of a research assistant, inspired by Google Notebook LM"
authors = [
{name = "Luis Novo", email = "lfnovo@gmail.com"}
]
readme = "README.md"
classifiers = [
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
]
requires-python = ">=3.11,<3.13"
dependencies = [
"streamlit>=1.45.0",
"fastapi>=0.104.0",
"uvicorn>=0.24.0",
"pydantic>=2.9.2",
"loguru>=0.7.2",
"langchain>=0.3.3",
"langgraph>=0.2.38",
"humanize>=4.11.0",
"streamlit-tags>=1.2.8",
"streamlit-scrollable-textbox>=0.0.3",
"tiktoken>=0.8.0",
"streamlit-monaco>=0.1.3",
"langgraph-checkpoint-sqlite>=2.0.0",
"langchain-community>=0.3.3",
"langchain-openai>=0.2.3",
"langchain-anthropic>=0.2.3",
"langchain-ollama>=0.2.0",
"langchain-google-genai>=2.0.1",
"langchain-groq>=0.2.1",
"langchain_mistralai>=0.2.1",
"langchain_deepseek>=0.1.3",
"tomli>=2.0.2",
"groq>=0.12.0",
"python-dotenv>=1.0.1",
"httpx[socks]>=0.27.0",
"nest-asyncio>=1.6.0",
"content-core>=1.0.2",
"ai-prompter>=0.3",
"esperanto>=2.3.4",
"langchain-google-vertexai>=2.0.10",
"surrealdb>=1.0.4",
"surreal-commands>=1.0.13",
"podcast-creator>=0.2.6",
]
[tool.setuptools]
package-dir = {"open_notebook" = "open_notebook"}
[project.optional-dependencies]
dev = [
"ipykernel>=6.29.5",
"ruff>=0.5.5",
"mypy>=1.11.1",
"types-requests>=2.32.0.20241016",
"ipywidgets>=8.1.5",
"pre-commit>=4.0.1",
]
[build-system]
requires = ["setuptools>=61.0"]
build-backend = "setuptools.build_meta"
[dependency-groups]
dev = [
"pre-commit>=4.1.0",
"watchdog>=6.0.0",
]
[tool.isort]
profile = "black"
line_length = 88
[tool.ruff]
line-length = 88
[tool.ruff.lint]
select = ["E", "F", "I"]
ignore = ["E501"]