

FKit (pronounced eff-kit) is a functional
programming toolkit for
JavaScript. It provides many functions for solving common problems with
functions, objects, arrays, and strings. It aims to provide reusable building
blocks while maintaining a laser focus on everyday utility.
Features:
-
Why reinvent the wheel? FKit provides many functions for solving everyday
problems to do with functions, arrays, objects, and strings.
-
FKit treats both strings and arrays as lists, which means you can apply the
same list functions to both strings and arrays (e.g. head
, tail
, map
,
filter
, fold
, etc).
-
Most FKit functions are already
curried by default, so you can
partially apply them
wherever you need to.
-
The ordering of arguments to FKit functions is carefully designed to be more
natural, this makes them highly
composable.
-
It's very compact, roughly 3 KB when minified and gzipped!
Table of Contents
Getting Started
Node
Install the npm package:
> npm install fkit
Import just the functions you need:
import { add } from 'fkit'
console.log(add(1, 2))
Or import the whole library:
import * as F from 'fkit'
console.log(F.add(1, 2))
Browser
The easiest way to start using FKit in your browser is to include it with a
<script>
tag in your HTML file:
<script src="https://unpkg.com/fkit/dist/fkit.min.js"></script>
Documentation
Examples
Sum the numbers in a list:
import { sum } from 'fkit'
sum([1, 2, 3])
Stash a string:
import { map, surround } from 'fkit'
map(surround('{', '}'), 'hello')
Intersperse the numbers in a list with another number:
import { intersperse } from 'fkit'
intersperse(4, [1, 2, 3])
Filter the numbers in a list where 1 <= n <= 5:
import { between } from 'fkit'
[1, 2, 3, 4, 5].filter(between(2, 4))
Calculate the Cartesian product of two lists:
import { cartesian } from 'fkit'
cartesian([1, 2], [3, 4])
Calculate the permutations of a list:
import { permutations } from 'fkit'
permutations('abc')
Check out some more examples:
Licence
FKit is licensed under the MIT licence. See the
LICENCE file for
more details.