# collections

> data structures with idiomatic JavaScript collection interfaces

Latest version **5.1.13** (published 2021-12-29) · BSD-3-Clause license · 0 weekly downloads

## Install

```sh
npm install collections
pnpm add collections
yarn add collections
bun add collections
```

## Health

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

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

Warnings: low downloads; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 5.1.13 |
| Published | 2021-12-29 |
| First published | 2011-03-17 |
| Weekly downloads | 0 |
| License | BSD-3-Clause |
| TypeScript types | separate (@types/collections) |
| Module format | CommonJS |
| Dependencies | 1 |
| Unpacked size | 292.3 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 2091 |
| Author | Kris Kowal |
| Maintainers | aadsm, hthetiot, francoisfrisch, marchant, kriskowal, stuk, cdebost |
| Keywords | collections, data structures, observable, list, set, map, splay |

## Links

- npm: https://www.npmjs.com/package/collections
- Repository: https://github.com/montagejs/collections
- Homepage: http://www.collectionsjs.com
- Issues: http://github.com/montagejs/collections/issues
- npm.io page: https://npm.io/package/collections

## Dependencies (1)

- [weak-map](https://npm.io/package/weak-map.md) ~1.0.x

## Alternatives

- [jsforce](https://npm.io/package/jsforce.md) — 851.2K weekly downloads
- [react-native-qrcode-svg](https://npm.io/package/react-native-qrcode-svg.md) — 693.5K weekly downloads
- [@salesforce/plugin-data](https://npm.io/package/@salesforce/plugin-data.md) — 394.9K weekly downloads
- [@backstage/plugin-search-common](https://npm.io/package/@backstage/plugin-search-common.md) — 308.5K weekly downloads
- [@chain-registry/types](https://npm.io/package/@chain-registry/types.md) — 38.4K weekly downloads

## Recent versions

- 5.1.13 (latest) — 2021-12-29
- 2.0.3 (future) — 2016-01-19
- 5.1.12 — 2020-09-25
- 5.1.11 — 2020-04-24
- 5.1.10 — 2020-04-07
- 5.1.9 — 2019-06-04
- 5.1.8 — 2019-02-07
- 5.1.7 — 2019-01-21
- 5.1.6 — 2018-12-19
- 5.1.5 — 2018-07-19
- 5.1.4 — 2018-07-11
- 5.1.3 — 2018-07-11
- 5.1.2 — 2017-12-28
- 5.1.1 — 2017-12-12
- 5.1.0 — 2017-12-07
- … 61 more at https://npm.io/package/collections/versions

## README

# Collections

[![npm version](https://img.shields.io/npm/v/collections.svg?style=flat)](https://www.npmjs.com/package/collections)

[![Build Status](https://travis-ci.org/montagejs/collections.png?branch=master)](http://travis-ci.org/montagejs/collections)

[![Analytics](https://ga-beacon.appspot.com/UA-51771141-2/collections/readme)](https://github.com/igrigorik/ga-beacon)

This package contains JavaScript implementations of common data
structures with idiomatic iterfaces, including extensions for Array and
Object.

You can use these Node Packaged Modules with Node.js, [Browserify](https://github.com/substack/node-browserify),
[Mr](https://github.com/montagejs/mr), or any compatible CommonJS module loader.  Using a module loader
or bundler when using Collections in web browsers has the advantage of
only incorporating the modules you need.  However, you can just embed
`<script src="collections/collections.min.js">` and *all* of the
collections will be introduced as globals.  :warning:
`require("collections")` is not supported.

```
npm install collections --save
```

Documentation can be found at http://collectionsjs.com which in turn can be
updated at https://github.com/montagejs/collectionsjs.com.

## Maintenance

Tests are in the `test` directory. Use `npm test` to run the tests in
NodeJS or open `test/run.html` in a browser. 

To run the tests in your browser, simply use `npm run test:jasmine`.

To run the tests using Karma use `npm run test:karma` and for continious tests run with file changes detection `npm run test:karma-dev`. Finally to open a remote debug console on karma use `npm run test:karma-debug`.

## Design principles

- extends core types (e.g extends `Array.prototype` with additional non-enumerable properties like `.set`)

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