Fast, modern, and practical utility library for FP in TypeScript.
Documentation
Full documentation can be found here.
Features
- π built with ReScript, which generates highly performant JavaScript code (see the benchmark results here)
- π provides more readable code, due to the data-firstapproach
- β¨ supports TypeScriptandFlow
- π‘ helps you write safer code with OptionandResulttypes
- π― all functions return immutable data (no side-effects)
- π² tree-shakeable
- π fully documented
Getting started
Installation
yarn add @mobily/ts-beltor with npm
npm install @mobily/ts-belt --saveUsage
| Module | Namespace | Description | 
|---|---|---|
| Array | A | Utility functions for Array. | 
| Boolean | B | Utility functions for Boolean. | 
| Number | N | Utility functions for Number. | 
| Object (Dict) | D | Utility functions for Object. | 
| String | S | Utility functions for String. | 
| Guards | G | Various TypeScript guards. | 
| Option | O | Functions for handling the Optiondata type that represents the existence and nonexistence of a value. | 
| Result | R | Functions for describing the result of a certain operation without relying on exceptions. | 
| Function | F | Other useful functions. | 
import { A, O, N, pipe } from '@mobily/ts-belt'
pipe(
  [1, 2, 3, 4, 5], // β [1, 2, 3, 4, 5]
  A.dropExactly(2), // β Some([3, 4, 5])
  O.flatMap(A.head), // β Some(3)
  O.map(N.multiply(10)), // β Some(30)
  O.getWithDefault(0), // β 30
) // β 30Contributors
License
The MIT License.
See LICENSE
