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