Blog
Longer-form notes live here. The current documentation remains the source of truth for APIs and guided learning.
- AI doesn't make Domain-Driven Design less important. It makes it essential.
AI-assisted coding can produce correct code without building a mental model you can own. Why domain boundaries, vocabulary, and cognitive compression matter more, not less, in the age of LLMs.
- Generating Zod schemas from Contentful: why your project needs this
How @xndrjs/contentful-to-zod turns your Contentful content model into precise Zod 4 schemas.
- Generating Zod schemas from Contentful: why your project needs this
How @xndrjs/contentful-to-zod turns your Contentful content model into precise Zod 4 schemas.
- 5 cases where TypeScript types are not enough to guarantee data correctness
External boundaries, structural typing, mutation, contextual guarantees, and semantic aliases—why structure is not trust, and what runtime validation and explicit boundaries add.
- Validation benchmarks: pick the right engine per boundary
What @xndrjs/bench-perf shows about Zod, Valibot, AJV, and core validators—and why adapter interoperability lets you use each where it shines.
- What problems does @xndrjs/domain actually solve?
A concrete tour of runtime trust at boundaries, ergonomic domain construction, layer-friendly data, shape transformations, and where invariants live, beyond “we like types.”
- xndrjs Domain Algebra - between Rich and Anemic Data Modeling
How the domain toolkit splits validation, representation, behavior, and guarantees without forcing a choice between rich classes and plain objects.
- OAS, JSON Schema, AJV: a solid domain in a few steps with xndrjs
Start from an OpenAPI contract exposed by your backend and get TypeScript types, runtime validation, and domain primitives without rewriting contracts by hand.