Skip to content

Introduction

Jane is a clarity‑first data boundary framework for TypeScript. It’s built for developers who want predictable, transparent, and teachable data handling — not a grab‑bag of validators, not a coercion engine, and not a black box. Jane gives you a complete, structured pipeline for turning raw input into meaningful, validated values with full visibility into every step.

If you’ve ever found yourself writing the same defensive code over and over — trimming strings, checking types, parsing numbers, validating shapes, logging issues, debugging mysterious failures — Jane exists to take that burden off your shoulders. It gives you a clean, explicit, multi‑stage pipeline that handles the messy parts of input handling so you can focus on your domain logic.

Why Jane Exists

Most validation libraries try to do everything at once:

  • parse
  • coerce
  • validate
  • normalize
  • decide

All in a single step.

That works until you need to understand why something failed, or what changed, or how a value was interpreted. It works until you need to debug a production issue, or explain a failure to a user, or audit a data flow, or enforce different strictness levels in different environments.

Jane solves this by separating the work into clear, predictable stages:

  • Scan: Detect structural hazards.
  • Normalize: Clean up structural noise.
  • Parse: Interpret meaning.
  • Validate: Enforce rules.
  • Decide (policy): Interpret events through policy.

Each stage has a single responsibility. Each stage is explicit. Each stage is teachable.

This separation is what makes Jane feel safe, predictable, and easy to reason about.

What Jane Gives You

Jane provides:

  • A clean, fluent API for building pipelines.
  • Explicit parsing and validation.
  • Predictable normalization.
  • Structured events for every stage.
  • A policy system that controls strictness.
  • Boundaries for validating entire objects.
  • Optional analysis tools (diff, explain, replay, telemetry).
  • A rich, structured result object.

You get full transparency into what happened, why it happened, and how the final decision was made.

Nothing is hidden. Nothing is implicit. Nothing happens behind your back.

Who Jane Is For

Jane is designed for developers who care about:

  • Correctness.
  • Clarity.
  • Onboarding experience.
  • Predictable behavior.
  • Auditability.
  • Explicitness over magic.
  • Clean boundaries between stages.
  • Transparency in data handling.

If you’ve ever wished your validation layer behaved more like a real system — with structure, stages, events, and decisions — Jane is built for you.

What You’ll Learn in This Guide

This Getting Started series will walk you through:

By the end, you’ll understand not just how to use Jane, but why it works the way it does — and how to use it confidently in real systems. Ready to get started?

Installing Jane