[build-system]
requires = ["maturin>=1.7,<2.0"]
build-backend = "maturin"

[project]
name = "etoon"
version = "0.1.3"
description = "Fast TOON (Token-Oriented Object Notation) encoder. Byte-identical to the TOON spec, 8x faster than toons and 2.7x faster than the official TS SDK."
requires-python = ">=3.10"
license = "Apache-2.0"
readme = "README.md"
keywords = ["toon", "serialization", "llm", "json", "encoder"]
classifiers = [
    "Development Status :: 4 - Beta",
    "License :: OSI Approved :: Apache Software License",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.12",
    "Programming Language :: Python :: 3.13",
    "Programming Language :: Rust",
    "Topic :: Software Development :: Libraries",
    "Topic :: Text Processing :: Markup",
]
dependencies = ["orjson>=3.10"]

[project.urls]
Repository = "https://github.com/coseto6125/etoon"
Issues = "https://github.com/coseto6125/etoon/issues"

[project.optional-dependencies]
dev = ["pytest>=8", "toons>=0.5.4"]

[tool.maturin]
bindings = "pyo3"
module-name = "etoon._etoon"
python-source = "python"
features = ["pyo3/extension-module"]
