open-index/open-npm huggingface dataset:
npm package: @slango.configs/lint-staged
Description: Slango lint-staged configs
Latest version: 1.1.19

# ![Lint-staged](https://img.shields.io/badge/lint--staged-3AC486?style=flat-square) Slango Lint-Staged Configs (@slango.configs/lint-staged)

This package exposes eslint configurations for easy setup, the following presets are available:

| Name         | Description                              | Includes                 | Tasks                                |
| ------------ | ---------------------------------------- | ------------------------ | ------------------------------------ |
| `debug`      | Intended for debugging purposes          | -                        | fail                                 |
| `default`    | Preset to be used in no-code packages    | -                        | prettier                             |
| `javascript` | Preset to be used in javascript packages | `default`                | prettier + eslint                    |
| `typescript` | Preset to be used in typescript packages | `default` + `javascript` | prettier + eslint + typescript check |
npm package: @slango.configs/prettier
Description: Slango prettier configs
Latest version: 1.0.13

# ![Prettier](https://img.shields.io/badge/Prettier-1A2B34?style=flat-square&logo=prettier) Slango Prettier Configs (@slango.configs/prettier)

This package exposes prettier configurations for easy setup, only one default configuration is available and it uses
mostly prettier defaults except for the following:

- printWidth: 100,
- singleQuote: true,
npm package: @slango.configs/scripts
Description: Slango scripts
Latest version: 1.2.0

# ![Scripts](https://img.shields.io/badge/scripts-AFD89C?style=flat-square&logo=gnu-bash) Slango Scripts (@slango.configs/scripts)

This package exposes scripts and utils.

## clean-node-modules

Removes all node_modules folders from the current directory and its subdirectories.

## clean-cache-artifacts

Removes all cache artifacts from the current directory and its subdirectories.

## clean-build-artifacts

Removes all build artifacts from the current directory and its subdirectories.

## clean-docker-images

Removes Docker images built from this repo, scoped by the `name` in the repo's `package.json`.

Usage:

```sh
clean-docker-images [options]
```

Options:

```sh
-a, --all                   Remove unused Docker images for this repo name
-i, --image <image:tag>     Remove a specific image by name and tag (scoped)
-h, --help                  Show help
```

Examples:

```sh
clean-docker-images --all
clean-docker-images --image myimage:1.0.11
```
npm package: @slango.configs/typescript
Description: Slango typescript configs
Latest version: 2.0.1

# ![Typescript](https://img.shields.io/badge/Typescript-659DD4?style=flat-square&logo=typescript) Slango Typescript Configs (@slango.configs/typescript)

Typescript configurations for easy setup

## Available configurations

| Name      | Description                                        |
| --------- | -------------------------------------------------- |
| `default` | Default configuration for typescript packages      |
| `next`    | Next.js configuration for next+typescript packages |

## Troubleshooting

### Next.js

Typescript's include and exclude properties are local to the file where they are declared, thus when the presets are
exported, effectively they do not have include or exclude configuration, it serves as template of what needs to be
included in the final tsconfig.json file:

**tsconfig.json**

```json
{
  "$schema": "https://json.schemastore.org/tsconfig",
  "extends": "@slango.configs/typescript/next.json",
  "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
  "exclude": ["node_modules"]
}
```
npm package: @slango/mangusta
Description: Mongoose middlewares and utilities
Latest version: 2.1.22

# Mangusta (@slango/mangusta)

Mongoose middlewares and utilities.

## Installation

```bash
pnpm add @slango/mangusta
```

## Usage

```ts
import { Schema } from 'mongoose';
import password from '@slango/mangusta/middleware/password';

const UserSchema = new Schema();
UserSchema.plugin(password());
```

## Testing

Run linting and unit tests:

```bash
pnpm lint
pnpm test
```

## Contributing

Issues and pull requests are welcome.
npm package: @slango/ristretto
Description: Opinionated rest client
Latest version: 1.0.35

# Ristretto (@slango/ristretto)

Opinionated REST client.

## Installation

```bash
pnpm add @slango/ristretto
```

## Usage

```ts
import { get } from '@slango/ristretto';

const user = await get<User>('https://api.example.com/users/1')();
```

## Testing

Run linting and unit tests:

```bash
pnpm lint
pnpm test
```

## Contributing

Issues and pull requests are welcome.
npm package: @slango/tessera
Description: Collection of typescript utilities
Latest version: 1.0.17

# Tessera (@slango/tessera)

Collection of TypeScript utilities.

## Installation

```bash
pnpm add @slango/tessera
```

## Usage

```ts
import type { Maybe } from '@slango/tessera/maybe';

function greet(name: Maybe<string>) {
  return name ?? 'Anonymous';
}
```

## Testing

Run linting and unit tests:

```bash
pnpm lint
pnpm test
```

## Contributing

Issues and pull requests are welcome.