Skip to main content

Getting started

Boxed provides functional utility types and functions, while focusing on ease-of-use.

const make = (input) =>
.flatMap((input) => Option.fromNullable(transform(input)))

Design principles

  • Provide utility types that make data-manipulation and storage easier
  • Immutable (all provided types are)
  • Give a good development experience (chaining API, reliable types)
  • Simple interoperability (you can convert back and forth to JS native types)
  • Compatibility with ts-pattern (using patterns we provide).

What's in the box?

  • Option<Value>
  • Result<Ok, Error>
  • AsyncData<Value>
  • Future<Value>
  • Lazy<Value>
  • Some utils like Deferred, Dict & Array


$ yarn add @swan-io/boxed


$ npm install @swan-io/boxed