[project]
name = "ricoeur"
version = "0.3.3"
description = "A local-first archive, search, and intelligence engine for your LLM conversation history."
readme = "README.md"
requires-python = ">=3.10"
dependencies = [
    "click>=8.1",
    "rich>=13.0",
    "tomli>=2.0; python_version < '3.11'",
    "tomli-w>=1.0",
]

[project.optional-dependencies]
embeddings = [
    "sentence-transformers>=2.2",
    "numpy>=1.24",
]
topics = [
    "bertopic>=0.16",
    "numpy>=1.24",
]
analytics = [
    "duckdb>=0.10",
    "pyarrow>=14.0",
]
tui = [
    "textual>=0.40",
]
mcp = [
    "mcp>=1.0",
]
serve = [
    "fastapi>=0.110",
    "uvicorn>=0.27",
]
langdetect = [
    "fast-langdetect>=0.3",
]
all = [
    "ricoeur[embeddings,topics,analytics,tui,mcp,serve,langdetect]",
]

[project.scripts]
ricoeur = "ricoeur.cli:cli"

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[tool.hatch.build.targets.wheel]
packages = ["src/ricoeur"]
