What is pure?
Pure is a library for functional programming in TypeScript. Itās purpose is to allow developers to use popular patterns and abstractions that are available in most functional languages. It is also Fantasy Land conformant.
Core values
Elegant and developer-friendly API - pureās design decisions are made with developer experience in mind. Pure doesnāt try to change how you write TypeScript, instead it provides useful tools for making your code easier to read and maintain without resolving to hacks or scary type definitions.
Type-safety - While pure can be used in vanilla JavaScript, itās entirely written with TypeScript and type safety in mind. While TypeScript does a great job at preventing runtime errors, pure goes a step further and provides utility functions for working with native objects like arrays in a type-safe manner.
Emphasis on practical code - Higher-kinded types and other type-level features would be great additions to this library, but as of right now they donāt have reasonable implementations in TypeScript. Pure focuses on being a library that you ca include in any TypeScript project and favors instance methods instead of functions, clean and readable type definitions instead of advanced type features and a curated API instead of trying to port over another languageās standard library.
How to start?
Pure is available as a package on npm. You can install it with a package manager of your choice:
$ npm install pure-ts
or
$ yarn add pure-ts
Documentation
You can find the documentation on the official site.