1# Wonka
2
3A fast push & pull stream library for Reason, loosely following the [callbag spec](https://github.com/callbag/callbag)
4
5<br>
6<a href="https://npmjs.com/package/wonka">
7 <img alt="NPM Version" src="https://img.shields.io/npm/v/wonka.svg" />
8</a>
9<a href="https://npmjs.com/package/wonka">
10 <img alt="License" src="https://img.shields.io/npm/l/wonka.svg" />
11</a>
12<a href="https://codecov.io/gh/kitten/wonka">
13 <img alt="Test Coverage" src="https://codecov.io/gh/kitten/wonka/branch/master/graph/badge.svg" />
14</a>
15<a href="https://bundlephobia.com/result?p=wonka">
16 <img alt="Minified gzip size" src="https://img.shields.io/bundlephobia/minzip/wonka.svg?label=gzip%20size" />
17</a>
18<br>
19
20> “There’s no earthly way of knowing<br>
21> Which direction we are going<br>
22> There’s no knowing where we’re rowing<br>
23> Or which way the river’s flowing” - **Willy Wonka**
24
25<br>
26
27
28
29Wonka is a lightweight iterable and observable library loosely based on
30the [callbag spec](https://github.com/callbag/callbag). It exposes a set of helpers to create streams,
31which are sources of multiple values, which allow you to create, transform
32and consume event streams or iterable sets of data.
33
34Wonka is written in [Reason](https://reasonml.github.io/), a dialect of OCaml, and can hence be used
35for native applications. It is also compiled using [BuckleScript](https://bucklescript.github.io) to plain
36JavaScript and has typings for [TypeScript](https://www.typescriptlang.org/) and [Flow](https://flow.org/).
37
38This means that out of the box Wonka is usable in any project that use the following:
39
40- Plain JavaScript
41- TypeScript
42- Flow
43- Reason/OCaml with BuckleScript
44- Reason/OCaml with `bs-native`
45- Reason/OCaml with Dune and Esy
46
47## [Documentation](https://wonka.kitten.sh/)
48
49**See the documentation at [wonka.kitten.sh](https://wonka.kitten.sh)** for more information about using `wonka`!
50
51- [Introduction](https://wonka.kitten.sh/)
52- [**Getting started**](https://wonka.kitten.sh/getting-started)
53- [Basics](https://wonka.kitten.sh/basics/)
54- [API Reference](https://wonka.kitten.sh/api/)
55
56The raw markdown files can be found [in this repository in the `docs` folder](https://github.com/kitten/wonka/tree/master/docs).