sqlalchemy>=2.0.32
beautifulsoup4>=4.12.3
fire>=0.6.0
ftfy>=6.2.0
joblib>=1.4.2
langchain>=1.3.0
langchain-classic>=1.0.7
langchain-community>=0.4.1
langchain-openai>=1.2.1
langchain-litellm>=0.6.5
langfuse>=3.6.1
litellm>=v1.84.0
nest_asyncio>=1.6.0
chonkie[all]>=1.4.0
chonkie[semantic]>=1.4.0
prompt-toolkit>=3.0.47
tqdm>=4.66.4
faiss-cpu>=1.8.0
rich>=13.8.1
beartype>=0.22.2
platformdirs>=4.2.2
dill>=0.3.8
pyfiglet>=1.0.2
rtoml>=0.11.0
loguru>=0.7.2
grandalf>=0.8
lazy-import>=0.2.2
scikit-learn>=1.5.1
scipy>=1.13.1
uuid6>=2025.0.1
PersistDict>=0.2.14
nltk>=3.9.2
blake3>=1.0.8
pandas>=2.3.3
trio>=0.31.0
unstructured>=0.18.15
openparse[ml]>=0.5.7
pdfminer.six>=20231228
pillow_heif>=0.16.0
pypdfium2>=4.30.0
pymupdf>=1.24.5
pdfplumber>=0.11.1
pdf2image>=1.17.0
playwright>=1.45.0
goose3>=3.1.20
tldextract>=5.1.2
ddgs>=9.6.0
duckduckgo-search>=8.1.1

[anki]
ankipandas>=0.3.15
py_ankiconnect>=1.1.2

[audio]
deepgram-sdk>=3.2.7
httpx>=0.27.0
pydub>=0.25.1
ffmpeg-python>=0.2.0
torchaudio>=2.8.0

[audio:python_version >= "3.13"]
audioop-lts>=0.2.2

[dev]
ruff>=0.14.1
pre-commit>=4.1.0
pytest>=8.3.4
pytest-xdist>=3.6.1
build>=1.2.2.post1
twine>=6.1.0
bumpver>=2025.1131

[fasttext]
fasttext-langdetect>=1.0.5
langdetect>=1.0.9

[full]
wdoc[anki,audio,logseq,office,youtube]

[logseq]
LogseqMarkdownParser>=3.3

[office]
unstructured[all-docs]>=0.18.15
docx2txt>=0.8
pandoc>=2.4

[pdftotext]
pdftotext>=2.2.2

[youtube]
yt-dlp>=2026.3.17
youtube-transcript-api>=1.2.4
