[project]
name = "slow-reader"
version = "0.1.0"
description = "A web-based reading tool that creates meaningful friction"
authors = [{name = "Gal", email = "mail@velouria.dev"}]
requires-python = ">=3.11"
dependencies = [
    "fastapi>=0.104.0",
    "uvicorn[standard]>=0.24.0",
    "websockets>=12.0",
    "nltk>=3.8",
    "textstat>=0.7.3",
    "python-multipart>=0.0.6",
    "requests>=2.31.0",
    "beautifulsoup4>=4.12.0",
    "readability-lxml>=0.8.1",
]

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

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

[tool.ruff]
line-length = 88
select = ["E", "F", "W", "C90", "I", "N", "UP", "B", "S", "FBT", "A", "C4", "T20", "SIM", "ARG", "PTH", "PL", "RUF"]
ignore = ["S101", "PLR0913", "PLR2004", "PLR0911"]

[tool.ruff.format]
quote-style = "double"
indent-style = "space"