open-index/open-npm huggingface dataset:
npm package: @izzatullokanoatov/simple-npm-package
Description: A simple npm package for demonstration purposes and use in a Node.js app.
Author: Snyk Labs
Latest version: 0.0.2

<div align="center">

# Simple npm Package

A simple npm package for demonstration purposes and use in a Node.js app.

</div>

## Get Started

Follow these steps to publish your own npm package for your own project or using this project.

> This is using the CommonJS module format for use in Node.js apps. You can read more about CommonJS vs. ESM module formats in Node.js on the [LogRocket Blog](https://blog.logrocket.com/commonjs-vs-es-modules-node-js/)

1. [Create a GitHub Repository](https://github.com/new)
1. Clone the repo locally. Example `git clone https://github.com/snyk-labs/simple-npm-package.git`
1. Open your terminal and change directories to the folder of your cloned project. Example `cd simple-npm-package`
1. Run `npm init -y` to create a `package.json` file. Note: if you cloned this repository you won't need to do this step.
1. Update package.json name property with a scoped name. Example `@snyk-labs/simple-npm-package`. Be sure to use your username or organization name instead of mine.
1. Write code for the package (or just use the hello world example in `index.js`)
1. [Sign up with npm](https://www.npmjs.com/signup). Also for better security be sure to enable [two-factor authentication](https://docs.npmjs.com/configuring-two-factor-authentication) on your npm account.
1. Sign in with your npm account in your terminal using the command `npm login` and follow the on-screen instructions.
1. Run `npx npm-packlist` to see the contents that will be included in the published version of the package.
1. Run `npm publish --dry-run` to see what would be done when actually running the command.
1. Run `npm publish --access=public` to actually publish the package to npm. Note: --access=public is needed for scoped packages (`@snyk-labs/simple-npm-package`) as they're private by default. If it's not scoped and doesn't have the `private` field set to `true` in `package.json` it will be public as well.
npm package: @izziedee1/tiny
Description: Removes all spaces from a string
Latest version: 1.0.3

# tiny
Tutorial for tiny based on 
https://medium.freecodecamp.org/how-to-make-a-beautiful-tiny-npm-package-and-publish-it-2881d4307f7

Some things I had to figure out which were not explicitly pointed out by original author. 
In particular, I was confused by the combination of creating the package, **tiny** and 
the using of **tiny** as a package in another project.

The index.js of the **tiny** project contains the code:
```javascript
module.exports = function tiny(string) {
  if (typeof string !== "string") throw new TypeError("Tiny wants a string!");
  return string.replace(/\s/g, "");
};
```
npm package: @izziej7/lotide
Description: A mini clone of the Lodash library. Not intended for use in production-grade software.
Author: Fizza Jafri
Latest version: 1.0.1

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

**Require it:**

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

**Call it:**

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

## Documentation

The following functions are currently implemented:

* `countLetters(sentence)`: returns the count of each letter in a sentence in an object
* `countOnly(allItems, itemsToCount)`: returns the count in the allItems array of each string given as true in the itemsToCount array in an object
* `eqArrays(actual, expected)`: returns a boolean based on whether two arrays, actual and expected, are equal
* `eqObjects(actual, expected)`: returns a boolean based on whether two objects, actual and expected, are equal
* `findKey(object, callback)`: returns the first key in object for which the given callback returns a truthy value 
* `findKeyByValue(object, value)`: returns the first key in object for which the given value equals the value
* `flatten(arrayOfArrays)`: returns an array of arrays flattened a single level deep in a new array
* `head(array)`: returns the first element of an array
* `letterPositions(sentence)`: returns the index of each character in a sentence in an object
* `map(array, callback)`: returns the results of calling a callback function on each element of an array in a new array
* `middle(array)`: returns the middle-most element(s) of an array in a new array
* `tail(array)`: returns all except the first element of an array in a new array
* `takeUntil(array, callback)`: returns a slice of the array in a new array, with elements from the beginning until the callback returns truthy
* `without(source, itemsToRemove)`: returns a subset of the array source in a new array, excluding given values in array itemsToRemove
npm package: @izzius94/crypter
Description: The crypter library makes easy to share encrypted data with a Laravel project.
Author: Maurizio Urso
Latest version: 0.3.1

[![npm](https://badgen.net/npm/v/@izzius94/crypter)](https://www.npmjs.com/package/@izzius94/crypter)
[![npm](https://badgen.net/npm/dt/@izzius94/crypter)](https://www.npmjs.com/package/@izzius94/crypter)
[![License](https://badgen.net/github/license/izzius94/node-crypter)](https://github.com/izzius94/node-crypter/blob/main/LICENSE)
[![TS-Standard - TypeScript Standard Style Guide](https://badgen.net/badge/code%20style/ts-standard/blue?icon=typescript)](https://github.com/standard/ts-standard)

# @izzius94/crypter

The `crypter` library makes easy to share encrypted data with a Laravel project.

## Features

- Genaration of encryption keys from command line
- Encryption of strings
- Decryption of strings

### Supported algorithms

- aes-256-cbc (default)
- aes-128-cbc
- aes-256-gcm
- aes-128-gcm

### Missing features
Currently serialization and deserialization is not supported.

> To mitigate this use [php-serialize](https://www.npmjs.com/package/php-serialize) library.

## Usage

> Full documentation [here](https://github.com/izzius94/node-crypter/wiki)

### Creation of encryption key

```bash
npx @izzius94/crypter

```

This command will output a new encryption key in yor console. This command accept the algorithm to use as a parameter. If the algorithm is not supported it will exit with an error

### Encrypt/decrypt strings

To encrypt/decrypt strings use `encrypt` and `decrypt` methods passing the encryption key as the second parameter.

```typescript
import { encrypt, decrypt } from '@izzius94/crypter'

const key = readKey('8U6GU1Tp1/0Jb7/1BRCxpzQubzBKfs1Sm8V8Wtce4+U==')
const original = 'my-string'
const crypted = crypter.encrypt(original, key)
const decrypted = crypter.decrypt(crypted, key)

console.log(original === decrypted)

```

> To use a different algorithm pass it as the third parameter to the methods `encrypt` and `decrypt`.

### Using the Crypter class to encrypt and decrypt a string

Sometimes you will need to use the same key accross multiple classes. To help you do this you can use the class `Crypter` to share the same encryption key.

```typescript
import { Crypter, readKey } from '@izzius94/crypter'

const crypter = new Crypter(readKey('TkIRuk6C70E2ExHunuX+wg3CwX+kcgkbg59Yhwiqi7s='))
const original = 'my-string'
const crypted = crypter.encrypt(original)
const decrypted = crypter.decrypt(crypted)

// Will output true
console.log(original === decrypted)

```

> To use a different algorithm pass it as second parameter to the constructor of the class `Crypter`

## License
Copyright © 2023 Maurizio Urso Released under the MIT license
npm package: @izzius94/express-request-validator
Description: [![npm version](https://badge.fury.io/js/@izzius94%2Fexpress-request-validator.svg)](https://badge.fury.io/js/@izzius94%2Fexpress-request-validator) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://stan
Author: Maurizio Urso
Latest version: 0.2.2

[![npm version](https://badge.fury.io/js/@izzius94%2Fexpress-request-validator.svg)](https://badge.fury.io/js/@izzius94%2Fexpress-request-validator)
[![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)

# Express request validator
This library was inspired by Laravel Request validation and validatorjs

## Installation

**Using npm**
```
npm install @izzius94/express-request-validator
```

**Using yarn**
```
yarn add @izzius94/express-request-validator
```

## Basic Usage

### Create your validation class
```typescript
import {HttpRequest} from '@izzius94/express-request-validator';

export default class Password extends HttpRequest {
    protected rules() {
        return {
            password: 'required|string|confirmed'
        }
    }
}
```

Define your rules in the returned object.

### Register the validation middleware
```typescript
import express from 'express';
import validate from 'express-request-validator';
import MyValidation from './validations/MyValidation';

const app = express();

// Registering the middleware
app.post('/', validate(MyValidation), (req, res) => {
    res.json(req.body);
});

app.listen(process.env.APP_PORT, () => {
    console.log(`Server started`);
});

```

You are ready to go!


See the full documentation [here](https://gitlab.com/izzius94/express-request-validator/-/wikis/Home).
npm package: @izzle-org/crud-io
Description: Simple Crud Service Lib, based on OAuth2 Authorization and Axios Calls
Author: Daniel Böhmer
Latest version: 0.6.0

# Izzle Crud IO JS Lib

> Simple Crud Service Lib, based on OAuth2 Authorization and Axios Calls

## Installation

> Using npm:
 ```shell
 $ npm i -g npm
 $ npm i @izzle-org/crud-io
 ```

## Usage

> My Crud Service 'product.service.js'
```js
import { CrudService } from '@izzle-org/crud-io'

export default class extends CrudService {
    constructor () {
        super('products')
    }
}
```

> index.js
```js
import { ApiService, JwtService } from '@izzle-org/crud-io'

// Handle OAuth2
...
// JWT Config
JwtService.encrypt = true
JwtService.secretKey = 'foobar123'
JwtService.useSessionStorage()

JwtService.setToken({ access_token: 'foobar' })

// API Config
ApiService.init('https://api.foo.bar')
ApiService.setAuthHeader('Bearer ' + JwtService.getToken().access_token)

import ProductService from './product.service.js'

const service = new ProductService()

// GET https://api.foo.bar/products with Authorization Header (Bearer foobar)
let products = service.list()
```

## License

Copyright (c) 2020-present Daniel Böhmer

[MIT License](http://en.wikipedia.org/wiki/MIT_License)
npm package: @izzle-org/sanctum-client
Description: Simple JS Client Lib, based on Laravel Sanctum Authorization
Author: Daniel Böhmer
Latest version: 0.0.1

# Izzle Sanctum Js Client Lib

> Simple JS Client Lib, based on Laravel Sanctum Authorization

## Installation

> Using npm:
 ```shell
 $ npm i -g npm
 $ npm i @izzle-org/sanctum-client
 ```

## Usage

> Login:
```js
import { AuthService } from '@izzle-org/sanctum-client'

AuthService.init('https://api.foo.bar/sanctum/token')
AuthService.login('max', 'foobar', 'iPhone')
    .then(() => {
        // Success
    })
    .catch(error => {
       // Handle Error
       console.log(error)
    })
```

> Check Auth:
```js
import { AuthService } from '@izzle-org/sanctum-client'

if (AuthService.loggedIn()) {
    // Logged In
}
```

## License

Copyright (c) 2020-present Daniel Böhmer

[MIT License](http://en.wikipedia.org/wiki/MIT_License)