Socket
Socket
Sign inDemoInstall

fp-ts-std

Package Overview
Dependencies
Maintainers
1
Versions
41
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

fp-ts-std

The missing pseudo-standard library for fp-ts.


Version published
Maintainers
1
Created
Source

fp-ts-std

The missing pseudo-standard library for fp-ts. Supports both modern browsers and Node.

Documentation: samhh.github.io/fp-ts-std

Installation

The library is available on the npm registry under the same package name: fp-ts-std

fp-ts, newtype-ts, and monocle-ts are listed as peer dependencies.

Some of the more commonly needed functions from fp-ts-contrib are duplicated here.

fp-ts-std is published with both ESM and CJS modules. The import paths in either case needn't change and the appropriate module resolution should be picked up by Node and your bundler, however if your environment doesn't support conditional exports you'll need to import directly from a dist/(cjs|esm)/ subdirectory. Given ESM modules the library should tree shake well.

Node LTS - at time of writing v12 - and the latest evergreen browsers are supported.

Objectives

fp-ts-std aims to achieve the following objectives:

  • Flesh out what fp-ts is missing
  • Fill in the gaps between fp-ts and Ramda
  • Wrap JS APIs to be friendly, so that you never have to interact with null or undefined, or worry about a function throwing again

Ethos

fp-ts-std strives to adhere to the following principles:

  • Strict type-safety wherever possible, with risks well documented
  • All functions are curried
  • Functions are data-last as a rule
  • Functions are total unless explicitly prefixed with "unsafe" (with the exception of the Debug module)
  • Impure functions are appropriately signed with the IO and Task types
  • Lean towards Haskell naming conventions and idioms with an eye to fp-ts norms

Additionally, fp-ts-std enforces 100% testing coverage, and just about everything is documented with examples.

Contributing

Unreleased work is commit to the develop branch. master is the release branch and whence the documentation is generated.

All modules and exports must be annotated with JSDoc. This information is used to generate documentation. Simple, illustratory tests can also be included and will be checked during docs generation. For more information, see docs-ts.

Keywords

FAQs

Package last updated on 16 Jan 2022

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc