Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 1,000,000+ packages pre-installed, including funk-lib with all npm packages installed. Try it out:

var funkLib = require("funk-lib")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

funk-lib v0.15.2

FP for Vanilla JavaScript


ci npm module

FP for Vanilla JavaScript

funk-lib is a collection of functions for working with native JavaScript types in a consistent, functional way. It is heavily inspired by Ramda, but does not duplicate Ramda's functionality.

For a full list of functions see the Documentation For The Latest Release


Pure functions

Mostly. There are a few documented exceptions


All functions are curried, and arguments are arranged "data last" for useful partial application


Packages are available for both


npm i -P funk-lib
# or: es-module compatible build
npm i -P funk-lib-es


const { mapKeys } = require('funk-lib/object');
// or: es-module compatible build
import { mapKeys } from 'funk-lib-es/object';



$ npm run <command>

buildTranspile source
coverRun test coverage
initRe/Install deps
init:hardinit with a fresh package-lock
docsParse docs to JSON
lintLint the source
testRun tests
test:watchRun tests on change
verifyVerify linting, tests, coverage


RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free