paginate-core 0.1.0

Pure, language-agnostic pagination / filter / sort / search engine shared by pypaginate (Python) and the future JS/TS port.
Documentation

paginate-core

Pure, language-agnostic engine behind pypaginate. It owns the computational heart of the library — cursor encoding, offset math, text normalization, filtering, sorting and search — with zero binding dependencies so the exact same crate links natively into Python (via PyO3) today and compiles unchanged to WebAssembly / N-API for the planned JS/TS port.

Design rules

  • Plain data only. Everything crosses the boundary as [value::Value], a small JSON-like enum. No host objects, no framework types.
  • Deterministic & side-effect free. Same input, same output — which is what lets the Python property-based invariants double as the port's conformance suite.
  • Behaviour parity. Each module mirrors the semantics of its Python counterpart (e.g. the cursor wire format is byte-identical, so cursors minted by either implementation decode in the other).