# level-iterator-stream

> Turn an abstract-leveldown iterator into a readable stream

Latest version **5.0.0** (published 2021-04-09) · MIT license · 0 weekly downloads

## Install

```sh
npm install level-iterator-stream
pnpm add level-iterator-stream
yarn add level-iterator-stream
bun add level-iterator-stream
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 5.0.0 |
| Published | 2021-04-09 |
| First published | 2015-03-29 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Node | >=10 |
| Dependencies | 2 |
| Unpacked size | 17.5 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 12 |
| Maintainers | vweevers, juliangruber, ralphtheninja |
| Keywords | level |

## Links

- npm: https://www.npmjs.com/package/level-iterator-stream
- Repository: https://github.com/Level/iterator-stream
- Issues: https://github.com/Level/iterator-stream/issues
- npm.io page: https://npm.io/package/level-iterator-stream

## Dependencies (2)

- [inherits](https://npm.io/package/inherits.md) ^2.0.4
- [readable-stream](https://npm.io/package/readable-stream.md) ^3.4.0

## Recent versions

- 5.0.0 (latest) — 2021-04-09
- 4.0.2 — 2019-10-05
- 4.0.1 — 2019-03-30
- 4.0.0 — 2018-12-17
- 3.0.1 — 2018-10-18
- 2.0.3 — 2018-06-28
- 3.0.0 — 2018-06-28
- 2.0.2 — 2018-06-28
- 2.0.1 — 2018-06-10
- 2.0.0 — 2017-08-28
- 1.3.1 — 2015-08-17
- 1.3.0 — 2015-05-05
- 1.2.0 — 2015-05-04
- 1.1.1 — 2015-03-29
- 1.1.0 — 2015-03-29
- … 1 more at https://npm.io/package/level-iterator-stream/versions

## README

# level-iterator-stream

> Turn an [abstract-leveldown](https://github.com/Level/abstract-leveldown) iterator into a readable stream.

[![level badge][level-badge]](https://github.com/Level/awesome)
[![npm](https://img.shields.io/npm/v/level-iterator-stream.svg?label=&logo=npm)](https://www.npmjs.com/package/level-iterator-stream)
[![Node version](https://img.shields.io/node/v/level-iterator-stream.svg)](https://www.npmjs.com/package/level-iterator-stream)
[![Travis](https://img.shields.io/travis/com/Level/iterator-stream.svg?logo=travis&label=)](https://travis-ci.com/Level/iterator-stream)
[![Coverage Status](https://coveralls.io/repos/github/Level/iterator-stream/badge.svg)](https://coveralls.io/github/Level/iterator-stream)
[![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)
[![npm](https://img.shields.io/npm/dm/level-iterator-stream.svg?label=dl)](https://www.npmjs.com/package/level-iterator-stream)
[![Backers on Open Collective](https://opencollective.com/level/backers/badge.svg?color=orange)](#backers)
[![Sponsors on Open Collective](https://opencollective.com/level/sponsors/badge.svg?color=orange)](#sponsors)

## Usage

**If you are upgrading:** please see [UPGRADING.md](UPGRADING.md).

```js
const iteratorStream = require('level-iterator-stream')
const leveldown = require('leveldown')

const db = leveldown(__dirname + '/db')

db.open(function (err) {
  if (err) throw err

  const stream = iteratorStream(db.iterator())
  stream.on('data', function (kv) {
    console.log('%s -> %s', kv.key, kv.value)
  })
})
```

## Install

With [npm](https://npmjs.org) do:

```
npm install level-iterator-stream
```

## API

### `stream = iteratorStream(iterator[, options])`

Create a readable stream from `iterator`. The `options` are passed down to the `require('readable-stream').Readable` constructor, with `objectMode` forced to `true`. Set `options.keys` or `options.values` to `false` to only get keys or values. Otherwise receive `{ key, value }` objects.

Upon stream end or `.destroy()` the `iterator` will be closed after which a `close` event is emitted on the stream.

## Contributing

[`Level/iterator-stream`](https://github.com/Level/iterator-stream) is an **OPEN Open Source Project**. This means that:

> Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project.

See the [Contribution Guide](https://github.com/Level/community/blob/master/CONTRIBUTING.md) for more details.

## Donate

To sustain [`Level`](https://github.com/Level) and its activities, become a backer or sponsor on [Open Collective](https://opencollective.com/level). Your logo or avatar will be displayed on our 28+ [GitHub repositories](https://github.com/Level) and [npm](https://www.npmjs.com/) packages. 💖

### Backers

[![Open Collective backers](https://opencollective.com/level/backers.svg?width=890)](https://opencollective.com/level)

### Sponsors

[![Open Collective sponsors](https://opencollective.com/level/sponsors.svg?width=890)](https://opencollective.com/level)

## License

[MIT](LICENSE.md) © 2012-present [Contributors](CONTRIBUTORS.md).

[level-badge]: https://leveljs.org/img/badge.svg

---
_Source: https://npm.io/package/level-iterator-stream · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
