Skip to content

Installation

pnpm add @nlozgachev/pipelined

The library is split into four entry points. Import only what you need:

import { Maybe, Result, Task } from "@nlozgachev/pipelined/core";
import { Arr, Str } from "@nlozgachev/pipelined/data";
import { pipe, flow } from "@nlozgachev/pipelined/composition";
import { Brand } from "@nlozgachev/pipelined/types";
Entry pointContains
@nlozgachev/pipelined/coreMaybe, Result, Validation, Task, TaskResult, TaskMaybe, TaskValidation, These, Tuple, RemoteData, Deferred, Lens, Optional, Reader, State, Logged, Predicate, Refinement, Resource, Equality, Ordering, Lazy, Combinable, Op
@nlozgachev/pipelined/dataArr, Rec, Num, Str, Dict, Uniq
@nlozgachev/pipelined/compositionpipe, flow, compose, curry, uncurry, flip, tap, memoize, fn, not, on, converge, juxt
@nlozgachev/pipelined/typesBrand, Duration, NonEmptyList
  • Node.js 22 or later (for npm/pnpm/yarn/bun installs)
  • TypeScript 5.5 or later with strict mode enabled

TypeScript 5.5 or later is required because the library leverages standard ECMAScript Set composition methods (such as .union(), .intersection(), and .isSubsetOf()) which were introduced into TypeScript’s standard library in version 5.5.

Strict mode is required for the type-level guarantees — particularly exhaustiveness checking in match branches and narrowing in type guards — to work correctly.