# give-me-data

> A small npm package that helps generate some random data, ie emails, plain text, passwords, usernames and the list goes on.

Latest version **1.1.0** (published 2020-07-15) · MIT license · 0 weekly downloads

## Install

```sh
npm install give-me-data
pnpm add give-me-data
yarn add give-me-data
bun add give-me-data
```

## 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.1.0 |
| Published | 2020-07-15 |
| First published | 2020-07-11 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Unpacked size | 69.2 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Christopher Marshall |
| Maintainers | buhissopro |
| Keywords | password, text, email, generator, placeholder, random, data, populate model, model populator, fill object with data, data propigator |

## Links

- npm: https://www.npmjs.com/package/give-me-data
- Repository: https://github.com/CMarshall92/give-me-data
- Homepage: https://github.com/CMarshall92/give-me-data#readme
- Issues: https://github.com/CMarshall92/give-me-data/issues
- npm.io page: https://npm.io/package/give-me-data

## Alternatives

- [@expo/fingerprint](https://npm.io/package/@expo/fingerprint.md) — 6.2M weekly downloads
- [@azure/monitor-opentelemetry-exporter](https://npm.io/package/@azure/monitor-opentelemetry-exporter.md) — 850.0K weekly downloads
- [@azure/monitor-opentelemetry](https://npm.io/package/@azure/monitor-opentelemetry.md) — 624.0K weekly downloads
- [@posthog/ai](https://npm.io/package/@posthog/ai.md) — 423.3K weekly downloads
- [fakefilter](https://npm.io/package/fakefilter.md) — 63.9K weekly downloads

## Recent versions

- 1.1.0 (latest) — 2020-07-15
- 1.0.7 — 2020-07-12
- 1.0.6 — 2020-07-12
- 1.0.5 — 2020-07-12
- 1.0.4 — 2020-07-12
- 1.0.3 — 2020-07-11
- 1.0.2 — 2020-07-11
- 1.0.1 — 2020-07-11
- 1.0.0 — 2020-07-11

## README

![alt text](https://github.com/CMarshall92/give-me-data/blob/master/assets/HEADER.jpg?raw=true)

<div align="center">
  <img src="https://img.shields.io/npm/v/give-me-data?style=for-the-badge" />
  <img src="https://img.shields.io/npm/dw/give-me-data?style=for-the-badge" />
  <img src="https://img.shields.io/github/repo-size/CMarshall92/give-me-data?style=for-the-badge" />
  <img src="https://img.shields.io/github/issues/CMarshall92/give-me-data?style=for-the-badge" />
  <img src="https://img.shields.io/circleci/build/github/CMarshall92/give-me-data/master?style=for-the-badge&token=353a35290c2f7238f8a7bfd9f9ca6390f2e95d82" />
  <img src="https://img.shields.io/npm/l/give-me-data?style=for-the-badge" />
</div>

A small npm package that helps generate some random data, ie emails, plain text, passwords, usernames and the list goes on.

# Installation

`npm i give-me-data --save`

---

# Usage

### Secure Passwords

The example below show you how to generate secure passwords, the props table below shows you how to manipulate the output value of the function. You can generate long passwords with different casing, symbols enabled or aplhanumeric combinations.

| props                | type   | defaults                           | description                                                                                                                                                          |
| -------------------- | ------ | ---------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| output               | string | `single`                           | By default output is set to a single randomly password. Other variations of values that can be provided are as follows `list` or `single`                            |
| outputLength         | number | 0                                  | This prop allows you to return x number of random passwords inside an array. by default this property doesnt really do anything unless `list` was set for the output |
| length               | number | 20                                 | This is a number value this can be set to what ever valiue you would like to determine the length of the outputted password.                                         |
| contains             | shape  | { lowercase: true, numbers: true } | By default passwords contain lowercase and numbers you can add more options to this object by using the props below                                                  |
| contains > uppercase | bool   | false                              | If this prop is set to true then the password has the ability of containing uppercase chars                                                                          |
| contains > lowercase | bool   | true                               | If this prop is set to true then the password has the ability of containing lowercase chars                                                                          |
| contains > numbers   | bool   | true                               | If this prop is set to true then the password has the ability of containing numbers chars                                                                            |
| contains > specials  | bool   | false                              | If this prop is set to true then the password has the ability of containing specials chars                                                                           |

```js
import { passwordGenerator } from 'give-me-data';

passwordGenerator({
  output: 'list | single',
  outputLength: 0,
  passwordLength: 50
  contains: {
    uppercase: true,
    lowercase: true,
    specials: true,
    numbers: true
  }
});
```

| Introduced | Updated    |
| ---------- | ---------- |
| 12/07/2020 | 13/07/2020 |

---

### Random UserNames

| props               | type   | defaults                                                                                                                                                | description                                                                                                                                                                                                                        |
| ------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| separator           | string | `` | This prop defaults to an empty dtring meaning there will be no separator between any of the words. You can pass one of the following as separators |
| numberOfUsernames   | number | 10                                                                                                                                                      | This prop allows you to request as many random usernames as you want. This will always be returned in a list.                                                                                                                      |
| maxNumberOfWords    | number | 1                                                                                                                                                       | This prop allows you to request the number of seperated words that are returned in a single string if the value of this proiperty is set to 1. If set higher than one an array of usewrnames are generated and returned. This value must be greater than or equal to 1.                                                                                  |

```js
import { usernameGenerator } from 'give-me-data';

usernameGenerator({
  separator: '-',
  maxNumberOfWords: 1,
  numberOfUsernames: 20,
});
```

| Introduced | Updated    |
| ---------- | ---------- |
| 13/07/2020 | 13/07/2020 |

---

### Email Addresses - UNDER DEVELOPMET - Planned for v1.2.0

| props | defaults | description |
| ----- | -------- | ----------- |


```js
import { emailGenerator } from 'give-me-data';

emailGenerator();
```

| Introduced | Updated |
| ---------- | ------- |
| TBC        | TBC     |

---

### Plain Text - UNDER DEVELOPMET - Planned for v1.3.0

| props | defaults | description |
| ----- | -------- | ----------- |


```js
import { textGenerator } from 'give-me-data';

textGenerator();
```

| Introduced | Updated |
| ---------- | ------- |
| TBC        | TBC     |

---

### Populate Model - UNDER DEVELOPMET - Planned for v1.4.0

| props | defaults | description |
| ----- | -------- | ----------- |


```js
import { populateModel } from 'give-me-data';

populateModel();
```

| Introduced | Updated |
| ---------- | ------- |
| TBC        | TBC     |

---

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