# ts-fluent-iterators

> lazy fluent iterators

Latest version **16.0.1** (published 2025-09-20) · MIT license · 0 weekly downloads

## Install

```sh
npm install ts-fluent-iterators
pnpm add ts-fluent-iterators
yarn add ts-fluent-iterators
bun add ts-fluent-iterators
```

## Health

**Score 45/100 (D)** — status: stable.

Positive: has types; no vulnerabilities; high quality score.

Warnings: low downloads; no esm support.

Negative: stale.

## Facts

| | |
|---|---|
| Version | 16.0.1 |
| Published | 2025-09-20 |
| First published | 2022-07-11 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Node | * |
| Dependencies | 0 |
| Unpacked size | 111.4 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 0 |
| Author | Alain Caron |
| Maintainers | acaron |
| Keywords | lazy, iterator, typescript, fluent |

## Links

- npm: https://www.npmjs.com/package/ts-fluent-iterators
- Repository: https://github.com/alaincaron/ts-fluent-iterators
- Homepage: https://github.com/alaincaron/ts-fluent-iterators#readme
- Issues: https://github.com/alaincaron/ts-fluent-iterators/issues
- npm.io page: https://npm.io/package/ts-fluent-iterators

## Alternatives

- [@openai/codex-sdk](https://npm.io/package/@openai/codex-sdk.md) — 731.4K weekly downloads
- [babel-plugin-transform-react-jsx](https://npm.io/package/babel-plugin-transform-react-jsx.md) — 565.0K weekly downloads
- [babel-helper-remove-or-void](https://npm.io/package/babel-helper-remove-or-void.md) — 508.5K weekly downloads
- [@pnpm/store-controller-types](https://npm.io/package/@pnpm/store-controller-types.md) — 186.9K weekly downloads
- [react-native-signature-canvas](https://npm.io/package/react-native-signature-canvas.md) — 155.6K weekly downloads

## Recent versions

- 16.0.1 (latest) — 2025-09-20
- 16.0.0 — 2025-08-08
- 15.0.0 — 2025-06-12
- 14.2.0 — 2025-05-07
- 14.1.3 — 2025-01-25
- 14.1.2 — 2024-12-24
- 14.1.1 — 2024-12-18
- 14.1.0 — 2024-11-21
- 14.0.0 — 2024-11-21
- 13.0.5 — 2024-11-01
- 13.0.4 — 2024-11-01
- 13.0.3 — 2024-11-01
- 13.0.2 — 2024-11-01
- 13.0.1 — 2024-10-31
- 13.0.0 — 2024-10-31
- … 44 more at https://npm.io/package/ts-fluent-iterators/versions

## README

# Typescript Fluent Iterators

Provides [fluent api](https://en.wikipedia.org/wiki/Fluent_interface)
operations on iterators.

## Description

The library provides the common transformation, filtering and
aggregation operations on iterators.

## Quick start guide

Install from [Node Package Manager](https://www.npmjs.com/): `npm i ts-fluent-iterators`

Add the following code to your index file:

```typescript
import { iterator, Generators } from 'ts-fluent-iterators';

const iter = iterator(Generators.range());

console.log(
  `The first five even numbers are: ${iter
    .filter(n => n % 2 === 0)
    .take(5)
    .collect()}`
);
```

## Operations supported

- Item-by-item transformations:
  - [map](docs/classes/FluentIterator.md#map)
  - [enumerate](docs/classes/FluentIterator.md#enumerate)

- Group transformations like
  - [partition](docs/classes/FluentIterator.md#partition)
  - [tally](docs/classes/FluentIterator.md#tally)

- Extending operations like
  - [append](docs/classes/FluentIterator.md#append)
  - [prepend](docs/classes/FluentIterator.md#prepend)
  - [concat](docs/classes/FluentIterator.md#concat)

- Narrowing operations like
  - [filter](docs/classes/FluentIterator.md#filter)
  - [take](docs/classes/FluentIterator.md#take)
  - [takeWhile](docs/classes/FluentIterator.md#takewhile)
  - [skip](docs/classes/FluentIterator.md#skip)
  - [skipWhile](docs/classes/FluentIterator.md#skipwhile)
  - [first](docs/classes/FluentIterator.md#first)
  - [last](docs/classes/FluentIterator.md#last)

- Aggregating operations:
  - [collect](docs/classes/FluentIterator.md#collect)
  - [groupBy](docs/classes/FluentIterator.md#groupby)
  - [tally](docs/classes/FluentIterator.md#tally)
  - [collectToSet](docs/classes/FluentIterator.md#collecttoset)
  - [collectTo](docs/classes/FluentIterator.md#collectto)
  - [collectToMap](docs/classes/FluentIterator.md#collecttomap)
  - [collectToObject](docs/classes/FluentIterator.md#collecttoobject)
  - [fold](docs/classes/FluentIterator.md#fold)
  - [reduce](docs/classes/FluentIterator.md#reduce)
  - [join](docs/classes/FluentIterator.md#join)
  - [count](docs/classes/FluentIterator.md#count)
  - [max](docs/classes/FluentIterator.md#max)
  - [min](docs/classes/FluentIterator.md#min)

- Logical aggregating operations:
  - [all](docs/classes/FluentIterator.md#all)
  - [some](docs/classes/FluentIterator.md#some)
  - [contains](docs/classes/FluentIterator.md#contains)
  - [includes](docs/classes/FluentIterator.md#includes)

- Execution operations:
  - [tap](docs/classes/FluentIterator.md#tap)
  - [forEach](docs/classes/FluentIterator.md#foreach)

## Usage

Click here for the [Full API Reference](docs/README.md).

## License

Licensed under [MIT](https://en.wikipedia.org/wiki/MIT_License).

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