jev-tree
Recursive choice over taxonomies larger than Jev's direct option limit.
# jev-tree **Recursive Jev choice over a taxonomy.** TypeSafe’s Jev can only list **255 options in one choice question**. Real catalogs are bigger. `jev-tree` walks a JSON shape and calls Jev once per level (or per partition) so you can select among thousands of leaves. Same stack as [jevlogs](https://github.com/reachjalil/jevlogs): `typesafe-ai/jev` through Vercel AI Gateway, `ai@7.0.105`, Node.js 22+, MIT. <p> <a href="https://www.npmjs.com/package/jev-tree"><img src="https://img.shields.io/npm/v/jev-tree?style=flat-square&color=2448ff" alt="npm version" /></a> <a href="https://github.com/reachjalil/jev-tree/actions/workflows/ci.yml"><img src="https://github.com/reachjalil/jev-tree/actions/workflows/ci.yml/badge.svg?branch=main" alt="CI" /></a> <a href="https://github.com/reachjalil/jev-tree/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-MIT-2448ff?style=flat-square" alt="MIT" /></a> <a href="https://nodejs.org/"><img src="https://img.shields.io/badge/node-%E2%89%A522-11131b?style=flat-square" alt="Node 22+" /></a> </p> [Guide](docs/guide.md) · [API](docs/api.md) · [Explainer](https://reachjalil.github.io/jev-tree/) · [20s intro](https://reachjalil.github.io/jev-tree/jev-tree-intro.mp4) · [Dataset](https://huggingface.co/datasets/reachjalil/jev-tree-choice-cap) There is no marketing site. This repo is the product. The explainer is a 20-second film plus a click-through essay, not a dashboard. ## Why A flat `choice` with 1,000 SKUs, incident types, or workflow ids does not fit. Truncating to 255 **drops the tail** (in our bake-off, all of Cape Town). Splitting the catalog into a **tree** — and auto-bucketing oversized sibling lists — makes each call a short, precise question. Default **32 options per call**. Raise `maxFanout` up to 255