# @panoramine/lotide

> mini lodash library

Latest version **1.0.0** (published 2021-09-20) · ISC license · 0 weekly downloads

## Install

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

## Links

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

## Recent versions

- 1.0.0 (latest) — 2021-09-20

## 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 @panoramine/lotide`

**Require it:**

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

**Call it:**

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

## Documentation

The following functions are currently implemented:

* `tail(array)`: returns every element of the array except te first one
* `middle(array)`: take in an array and return the middle-most element/s of the given array
* `head(array)`: returns the first item in the array
* `assertArraysEqual(array1, array2)`: take in two arrays and console.log an appropriate message to the console
* `assertEqual(actual, expected)`: compares two values it takes in and print out a message telling us if they match or not
* `assertObjectsEqual(actual, expected)`: take in two objects and console.log an appropriate message to the console
* `countLetters(string)`: return count of each letter in a given string
* `countOnly(allItems, itemsToCount)`: return an object containing counts of everything that the input object listed
* `eqArrays(array1, array2)`: takes in two arrays and returns true or false, based on a perfect match
* `eqObjects(obj1,obj2)`: take in two objects and returns true or false, based on a perfect match
* `findkey(obj, callback)`: takes in an object and a callback and return the first key for which the callback returns a truthy value
* `findKeyByValue(obj, value)`: given an object and a value will return the key to that value
* `flatten(array)`: take in an array containing elements including nested arrays of elements, and return a "flattened" version of the array
* `letterPositions(string)`: return object with positions for every letter in a given string
* `map(array, callback)`: return a new array based on the results of the callback function
* `takeUntil(array, callback)`: keep collecting items from a provided array until the callback provided returns a truthy value
* `without(source, itemsToRemove)`: return a subset of a given array, removing unwanted elements

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