# @angelky/lotide

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

Latest version **1.0.1** (published 2021-02-09) · ISC license · 0 weekly downloads

## Install

```sh
npm install @angelky/lotide
pnpm add @angelky/lotide
yarn add @angelky/lotide
bun add @angelky/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 | 2021-02-09 |
| First published | 2021-02-09 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Unpacked size | 17.3 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 0 |
| Author | angelky |
| Maintainers | angelky |

## Links

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

## Recent versions

- 1.0.1 (latest) — 2021-02-09
- 1.0.0 — 2021-02-09

## 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 me as part of my learnings at Lighthouse Labs.

## Usage

**Install it:**

`npm install @username/lotide`

**Require it:**

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

**Call it:**

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

## Documentation

The following functions are currently implemented:

- `countLetters`: accepts a string and returns an object with key value pairs to denote each characterin the string, and the number of times it occurred in the string
- `countOnly`: accepts an array of strings and return counts for a specific subset of those strings (the subset is identified by an object)
- `eqArrays`: accepts two arrays and returns true or false based on if they are equal
- `eqObjects`: accepts two objects and returns true or false based on if they are equal
- `findKey`: accepts an object and a callback function: scans the object and returns the first key for which the callback function returns a truthy value
- `findKeyByValue`: accepts an object and a value: scans the object and returns the first key which contains the given value
- `flatten`: accepts an array where some elements may also be arrays and returns a single array with no inner arrays (a "flattened" version of the input array)
- `head`: accepts an array and returns the first element
- `map`: accepts an array and a function, and creates a new array with the results of calling the provided function on each element in the input array
- `middle`: accepts an array and returns the middle element or elements as an array
- `tail`: accepts an array and returns the same array, but with the first element removed
- `takeUntil`: accepts an array and a callback function and runs each array element through the function, returning an array with all the items from the original array until the callback provided returns a truthy value
- `without`: accepts a source array and an array of items to remove, and returns a subject of the source array, removing any elements that were included in the inputted array of items to remove

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