# @danispin/lotide

> A mini clone of the [Lodash](https://lodash.com) library.

Latest version **1.0.1** (published 2022-08-01) · ISC license · 0 weekly downloads

## Install

```sh
npm install @danispin/lotide
pnpm add @danispin/lotide
yarn add @danispin/lotide
bun add @danispin/lotide
```

## 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 | 1.0.1 |
| Published | 2022-08-01 |
| First published | 2022-08-01 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 79 |
| Unpacked size | 22.8 KB |
| Known vulnerabilities | 0 (+2 in 1 direct dependencies) |
| Install scripts | no |
| Author | Dani Spinosa |
| Maintainers | danispin |

## Links

- npm: https://www.npmjs.com/package/@danispin/lotide
- Repository: https://github.com/danispinxo/lotide
- Homepage: https://github.com/danispinxo/lotide#readme
- Issues: https://github.com/danispinxo/lotide/issues
- npm.io page: https://npm.io/package/@danispin/lotide

## Dependencies (79)

- [he](https://npm.io/package/he.md) ^1.2.0
- [ms](https://npm.io/package/ms.md) ^2.1.3
- [diff](https://npm.io/package/diff.md) ^5.0.0
- [flat](https://npm.io/package/flat.md) ^5.0.2
- [glob](https://npm.io/package/glob.md) ^7.2.0
- [once](https://npm.io/package/once.md) ^1.4.0
- [y18n](https://npm.io/package/y18n.md) ^5.0.8
- [chalk](https://npm.io/package/chalk.md) ^4.1.2
- [cliui](https://npm.io/package/cliui.md) ^7.0.4
- [debug](https://npm.io/package/debug.md) ^4.3.4
- [loupe](https://npm.io/package/loupe.md) ^2.3.4
- [yargs](https://npm.io/package/yargs.md) ^16.2.0
- [braces](https://npm.io/package/braces.md) ^3.0.2
- [nanoid](https://npm.io/package/nanoid.md) ^3.3.3
- [wrappy](https://npm.io/package/wrappy.md) ^1.0.2
- [find-up](https://npm.io/package/find-up.md) ^5.0.0
- [is-glob](https://npm.io/package/is-glob.md) ^4.0.3
- [js-yaml](https://npm.io/package/js-yaml.md) ^4.1.0
- [p-limit](https://npm.io/package/p-limit.md) ^3.1.0
- [pathval](https://npm.io/package/pathval.md) ^1.1.1
- [anymatch](https://npm.io/package/anymatch.md) ^3.1.2
- [argparse](https://npm.io/package/argparse.md) ^2.0.1
- [chokidar](https://npm.io/package/chokidar.md) ^3.5.3
- [deep-eql](https://npm.io/package/deep-eql.md) ^3.0.1
- [escalade](https://npm.io/package/escalade.md) ^3.1.1
- [has-flag](https://npm.io/package/has-flag.md) ^4.0.0
- [inflight](https://npm.io/package/inflight.md) ^1.0.6
- [inherits](https://npm.io/package/inherits.md) ^2.0.4
- [p-locate](https://npm.io/package/p-locate.md) ^5.0.0
- [readdirp](https://npm.io/package/readdirp.md) ^3.6.0
- [camelcase](https://npm.io/package/camelcase.md) ^6.3.0
- [is-number](https://npm.io/package/is-number.md) ^7.0.0
- [minimatch](https://npm.io/package/minimatch.md) ^5.0.1
- [picomatch](https://npm.io/package/picomatch.md) ^2.3.1
- [wrap-ansi](https://npm.io/package/wrap-ansi.md) ^7.0.0
- [ansi-regex](https://npm.io/package/ansi-regex.md) ^5.0.1
- [color-name](https://npm.io/package/color-name.md) ^1.1.4
- [concat-map](https://npm.io/package/concat-map.md) ^0.0.1
- [decamelize](https://npm.io/package/decamelize.md) ^4.0.0
- [fill-range](https://npm.io/package/fill-range.md) ^7.0.1
- [is-extglob](https://npm.io/package/is-extglob.md) ^2.1.1
- [strip-ansi](https://npm.io/package/strip-ansi.md) ^6.0.1
- [workerpool](https://npm.io/package/workerpool.md) ^6.2.1
- [ansi-colors](https://npm.io/package/ansi-colors.md) ^4.1.1
- [ansi-styles](https://npm.io/package/ansi-styles.md) ^4.3.0
- [check-error](https://npm.io/package/check-error.md) ^1.0.2
- [emoji-regex](https://npm.io/package/emoji-regex.md) ^8.0.0
- [fs.realpath](https://npm.io/package/fs.realpath.md) ^1.0.0
- [glob-parent](https://npm.io/package/glob-parent.md) ^5.1.2
- [locate-path](https://npm.io/package/locate-path.md) ^6.0.0
- [log-symbols](https://npm.io/package/log-symbols.md) ^4.1.0
- [path-exists](https://npm.io/package/path-exists.md) ^4.0.0
- [randombytes](https://npm.io/package/randombytes.md) ^2.1.0
- [safe-buffer](https://npm.io/package/safe-buffer.md) ^5.2.1
- [type-detect](https://npm.io/package/type-detect.md) ^4.0.8
- [yocto-queue](https://npm.io/package/yocto-queue.md) ^0.1.0
- [is-plain-obj](https://npm.io/package/is-plain-obj.md) ^2.1.0
- [string-width](https://npm.io/package/string-width.md) ^4.2.3
- [yargs-parser](https://npm.io/package/yargs-parser.md) ^20.2.4
- [color-convert](https://npm.io/package/color-convert.md) ^2.0.1
- [get-func-name](https://npm.io/package/get-func-name.md) ^2.0.0
- [balanced-match](https://npm.io/package/balanced-match.md) ^1.0.2
- [browser-stdout](https://npm.io/package/browser-stdout.md) ^1.3.1
- [is-binary-path](https://npm.io/package/is-binary-path.md) ^2.1.0
- [normalize-path](https://npm.io/package/normalize-path.md) ^3.0.0
- [supports-color](https://npm.io/package/supports-color.md) ^8.1.1
- [to-regex-range](https://npm.io/package/to-regex-range.md) ^5.0.1
- [yargs-unparser](https://npm.io/package/yargs-unparser.md) ^2.0.0
- [assertion-error](https://npm.io/package/assertion-error.md) ^1.1.0
- [brace-expansion](https://npm.io/package/brace-expansion.md) ^2.0.1
- [get-caller-file](https://npm.io/package/get-caller-file.md) ^2.0.5
- [path-is-absolute](https://npm.io/package/path-is-absolute.md) ^1.0.1
- [binary-extensions](https://npm.io/package/binary-extensions.md) ^2.2.0
- [require-directory](https://npm.io/package/require-directory.md) ^2.1.1
- [strip-json-comments](https://npm.io/package/strip-json-comments.md) ^3.1.1
- [escape-string-regexp](https://npm.io/package/escape-string-regexp.md) ^4.0.0
- [is-unicode-supported](https://npm.io/package/is-unicode-supported.md) ^0.1.0
- [serialize-javascript](https://npm.io/package/serialize-javascript.md) ^6.0.0
- [is-fullwidth-code-point](https://npm.io/package/is-fullwidth-code-point.md) ^3.0.0

## Recent versions

- 1.0.1 (latest) — 2022-08-01
- 1.0.0 — 2022-08-01

## README

# Lotide

A mini clone of the [Lodash](https://lodash.com) library.

## Purpose

**_BEWARE:_ This library was published for learning purposes. It is _not_ intended for use in production-grade software.**

This project was created and published by [Dani Spinosa](https://github.com/danispinxo) as part of my learnings at Lighthouse Labs. 

## Usage

**Install it:**

`npm install @danispin/lotide`

**Require it:**

`const _ = require('@danispin/lotide');`

**Call it:**

`const results = _.tail([1, 2, 3]) // => [2, 3]`

## Documentation

The following functions are currently implemented:

* `head(...)`: returns the first item in an array
* `tail(...)`: returns all but the first item in an array
* `middle(...)`: returns the middle of an array
* `eqArrays(...)`: determines if two arrays are equal
* `assertArraysEqual(...)`: asserts whether or not arrays are equal
* `assertEqual(...)`: asserts if two strings or numbers or booleans are equal
* `eqObjects(...)`: determines if two objects are equal
* `countLetters(...)`: creates an object that contains the number of times each letter appears in a string
* `flatten(...)`: takes an array of nested arrays and returns a single-level array
* `countOnly(...)`: creates an object from an array that counts how many times each item appears in the array
* `letterPositions(...)`: returns the indexes of each appearance of a given letter in a string
* `findKeyByValue(...)`: returns a key from an object when given the key's value
* `findKey(...)`: returns a key from an object when given various criteria
* `map(...)`: alters an array according to a supplied function
* `takeUntil(...)`: returns part of an array until it meets a supplied function
* `without(...)`: returns a supplied array, with a supplied item removed

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