open-index/open-npm huggingface dataset:
npm package: @gasket/plugin-express
Description: Adds express support to your application
Author: GoDaddy Operating Company, LLC
Latest version: 7.5.2

# @gasket/plugin-express

Adds Express to your application.

## Guides

- [Setup Guide] for adding middleware and routes.
- [Common "Gotchas"] encountered with Express middleware.

## Installation

```
npm i @gasket/plugin-express
```

Update your `gasket` file plugin configuration:

```diff
// gasket.js

+ import pluginExpress from '@gasket/plugin-express';

export default makeGasket({
  plugins: [
+   pluginExpress
  ]
});
```

## Configuration

All the configurations for the plugin are added under `express` in the config:

- `compression`: true by default. Can be set to false if applying compression
  differently.
- `trustProxy`: Enable trust proxy option, [see Express documentation on Express behind proxies](https://expressjs.com/en/guide/behind-proxies.html)

#### Example configuration

```js
export default makeGasket({
  plugins: [
    pluginExpress
  ],
  express: {
    compression: false,
    trustProxy: true
  }
});
```
### Route Definition

Routes can be defined in a in-app plugin in the `plugins` directory. The plugin will hook the `express` lifecycle to add the routes to the express app.

```js
// plugins/routes-plugin.js
export default {
  name: 'routes-plugin',
  hooks: {
    express: async function (gasket, app) {
      app.get('/hello', (req, res) => {
        res.send('Hello World!');
      });
    }
  }
};
```

## Lifecycles

### express

Executed **after** the `middleware` event for when you need full control over
the `express` instance.

```js
export default {
  name: 'sample-plugin',
  hooks: {
    /**
    * Update Express app instance
    *
    * @param {Gasket} gasket The Gasket API
    * @param {Express} express Express app instance
    * @returns {function|function[]} middleware(s)
    */
    express: async function (gasket, express) {
    }
  }
};
```

### errorMiddleware

Executed after the `express` event. All middleware functions returned from this
hook will be applied to Express.

```js
export default {
  name: 'sample-plugin',
  hooks: {
    /**
    * Add Express error middlewares
    *
    * @param {Gasket} gasket The Gasket API
    * @returns {function|function[]} error middleware(s)
    */
    errorMiddleware: function (gasket) {
    }
  }
};
```

## How it works

This plugins hooks the [createServers] lifecycles from [@gasket/plugin-https].

## License

[MIT](./LICENSE.md)

<!-- LINKS -->

[Setup Guide]:docs/setup.md
[Common "Gotchas"]:docs/gotchas.md

[@gasket/plugin-https]:/packages/gasket-plugin-https/README.md
[createServers]:/packages/gasket-plugin-https/README.md#createservers
npm package: @gasket/plugin-fastify
Description: Adds fastify support to your application
Author: GoDaddy Operating Company, LLC
Latest version: 7.5.5

# @gasket/plugin-fastify

Adds Fastify to your application.

## Installation

#### New apps

```
npm i @gasket/plugin-fastify
```

Update your `gasket` file plugin configuration:

```diff
// gasket.js

+ import pluginFastify from '@gasket/plugin-fastify';

export default makeGasket({
  plugins: [
+   pluginFastify
  ]
});
```

## Configuration

All the configurations for the plugin are added under `fastify` in the config:

- `compression`: true by default. Can be set to false if applying compression
  differently.
- `trustProxy`: Enable trust proxy option, [see Fastify documentation for possible values](https://fastify.dev/docs/latest/Reference/Server/#trustproxy)
- `disableRequestLogging`: Turn off request logging, true by default

#### Example configuration

```js
export default makeGasket({
  plugins: [
    pluginFastify
  ],
  fastify: {
    compression: false,
    excludedRoutesRegex: /^(?!\/_next\/)/,
    trustProxy: true
  }
});
```

### Route Definition

Routes can be defined in a in-app plugin in the `plugins` directory. The plugin will hook the `fastify` lifecycle to add the routes to the fastify app.

```js
// plugins/routes-plugin.js
export default {
  name: 'routes-plugin',
  hooks: {
    fastify: async function (gasket, app) {
      app.get('/hello', (req, res) => {
        res.send('Hello World!');
      });
    }
  }
};
```

## Lifecycles

### fastify

Executed **after** the `middleware` event for when you need full control over
the `fastify` instance.

```js
export default {
  name: 'sample-plugin',
  hooks: {
    /**
    * Update Fastify app instance
    *
    * @param {Gasket} gasket The Gasket API
    * @param {Fastify} fastify Fastify app instance
    * @returns {function|function[]} middleware(s)
    */
    fastify: async function (gasket, fastify) {
    }
  }
};
```

### errorMiddleware

Executed after the `fastify` event. All middleware functions returned from this
hook will be applied to Fastify.

```js
export default {
  name: 'sample-plugin',
  hooks: {
    /**
    * Add Fastify error middlewares
    *
    * @param {Gasket} gasket The Gasket API
    * @returns {function|function[]} error middleware(s)
    */
    errorMiddleware: function (gasket) {
    }
  }
};
```

## How it works

This plugins hooks the [createServers] lifecycles from [@gasket/plugin-https].

## Guides

- [Removing @fastify/express] - Migration guide for removing `@fastify/express` dependency and using native Fastify patterns

## License

[MIT](./LICENSE.md)

<!-- LINKS -->

[@gasket/plugin-https]:/packages/gasket-plugin-https/README.md
[createServers]:/packages/gasket-plugin-https/README.md#createservers
[Removing @fastify/express]:docs/remove-fastify-express.md
npm package: @gasket/plugin-git
Description: Adds git support to your application
Author: GoDaddy Operating Company, LLC
Latest version: 7.4.10

# @gasket/plugin-git

This is a built-in plugin for the Gasket CLI used to set up new apps with git
repositories when using the [gasket create command].

## Usage

The features of this plugin hooks are in the lifecycles it hooks during the
create process.

### prompt

The `prompt` will ask users during the create command if they wish to initialize
a GitHub repository. This prompt will set the `gitInit` property of the create
context. It is possible to default this in a preset, by setting this in the
preset's package.json, under a `gasket.create` property.

In the following example, when a new app is created with this preset, a git repo
will always be initialized, and the user will not be prompted.

```json
{
  "name": "gasket-preset-example",
  "version": "1.2.3",
  "main": "index.js",
  "dependencies": {
    "@gasket/resolve": "^2.0.0",
    "gasket-plugin-example": "^1.0.0"
  },
  "gasket": {
    "create" : {
      "gitInit": true
    }
  }
}
```

### create

During the `create` lifecycle, .gitignore and .gitattributes templates will be
registered to be generated for the app.

If you have a plugin which needs to add git ignore rules, in the `create`
lifecycle hook of your plugin, you can access `gitignore` helper to add rules.
Rules can be added to different categories which will group them under comments.

The `gitignore` helper will only be placed on the CreateContext when this plugin
is configured and `gitInit` is true, either by preset config or prompt.

#### Example adding gitignore

```js
export default {
  name: 'gasket-plugin-example',
  hooks: {
    create(gasket, createContext) {
      const { gitignore } = createContext;

      // See if `gitignore` is on the create context
      if(gitignore) {
        // ignore a single file
        gitignore.add('file-to-be-ignored.js');

        // ignore wildcard rules
        gitignore.add('*.tmp');

        // ignore multiple files and/or directories
        gitignore.add(['file1.js', 'dir2/']);

        // add an ignore under a category
        gitignore.add('node_modules', 'dependencies');
      }
    }
  }
};
```

The resulting `.gitignore` that is generated will have all the added gitignore
rules and comments for categories.

```properties
# -- .gitignore file --

file-to-be-ignored.js
*.tmp
file1.js
dir2/

# dependencies
node_modules
```

### postCreate

After all the app contents are generated, this plugin's postCreate hook will
make a first commit for the generated files. The timing for this hook is set to
run _last_. It is important when creating plugins that implement `postCreate`
hooks, that their timings do come _after_ the Git plugin, especially if
modifying files, otherwise those modifications will not be part of the first
commit.

See [plugin hook timings] for more information.

## License

[MIT](./LICENSE.md)

<!-- LINKS -->

[gasket create command]:/packages/gasket-cli/README.md#create-command
[plugin hook timings]:/packages/gasket-engine/README.md
npm package: @gasket/plugin-jest
Description: Integrated jest into your application.
Author: GoDaddy Operating Company, LLC
Latest version: 7.5.9

# @gasket/plugin-jest

Creates a `jest` with `enzyme` based testing environment for your Gasket
application.

## Installation

This plugin is only used by presets for `create-gasket-app` and is not installed for apps.

## Usage

When you create a new Gasket application that is configured with the `jest`
plugin it will prepare it with a `jest` based testing environment. It will add
the following `scripts` to the `package.json`:

- `npm test`, Runs the files matching default jest glob pattern, i.e. includes
  files from __tests__ folder and all `*.test.js` or `*.spec.js` files.
- `npm run test:watch` Same as `npm test` but now watches your tests and
  automatically re-runs the tests when changes are detected.
- `npm run test:coverage` Same as `npm test`, but generates coverage information
  for all the files matching the `collectCoverageFrom` pattern in
  `jest.config.js` file.

`enzyme` is included with this plugin, which makes it easier to assert,
manipulate, and traverse your React Components.

## License

[MIT](./LICENSE.md)
npm package: @gasket/plugin-mocha
Description: Integrates mocha based testing in to your Gasket application
Author: GoDaddy Operating Company, LLC
Latest version: 7.5.7

# @gasket/plugin-mocha

Creates a `mocha`, `nyc`, `sinon`, `chai` based testing environment for your
Gasket application.

## Installation

This plugin is only used by presets for `create-gasket-app` and is not installed for apps.

## Usage

When you create a new gasket application that is configured with the `mocha`
plugin it will prepare it with a `mocha` based testing environment. It will add
the following `scripts` to the `package.json`:

- `npm test`, Runs the `.test.js` files in your `test` folder and generates
  coverage information of each of the files you test.
- `npm run test:runner` Same as `npm test`, but without coverage information.
- `npm run test:watch` Same as `npm run test:runner` but now watches your tests
  and automatically re-runs the tests when changes are detected.

The following test utilities are included:

- `chai` Installed as default assertion framework using the `expect` syntax.
- `sinon` Create spies, stubs and mocks.
- `enzyme` Easier to assert, manipulate, and traverse your React Components.

The tests are automatically processed with babel using the `.babelrc` that is in
the root of your application. We've also configured `enzyme` for the latest
support React, and prepared the test environment with `jsdom` so you can use the
`mount` functionality of `enzyme`.

## License

[MIT](./LICENSE.md)
npm package: @gasket/plugin-swagger
Description: Generate and serve swagger docs
Author: GoDaddy Operating Company, LLC
Latest version: 7.4.1

# @gasket/plugin-swagger

Gasket plugin for working with Swagger specs, and uses [swagger-ui-express] to
serve Swagger UI docs with Express and uses [fastify-swagger] to serve Swagger UI
docs with Fastify.

## Installation

```
npm i @gasket/plugin-swagger
```

Update your `gasket` file plugin configuration:

```diff
// gasket.js

+ import pluginSwagger from '@gasket/plugin-swagger';

export default makeGasket({
  plugins: [
+   pluginSwagger
  ]
});
```

## Configuration

- **`swagger`** - (object) The base gasket.config object.
  - **`definitionFile`** - (string) Target swagger spec file, either json or
    yaml. (Default: `'swagger.json'`)
  - **`apiDocsRoute`** - (string) Route to Swagger UI (Default: `'/api-docs'`)
  - **`jsdoc`** - (object) If set, the definitionFile will be generated based on
    JSDocs in the configured files. See the [swagger-jsdocs] options for what is
    supported.
  - **`ui`** - (object) Optional custom UI options. See
    [swagger-ui-express] options for what is supported.
  - **`uiConfig`** - (object) Optional custom UI options. Only for use with Fastify. See [@fastify/swagger-ui] options for what is supported.

#### Example from JSDocs

By specifying the `swagger.jsdocs` options in the `gasket.js`, the
Swagger definition file will be generated with `build` Gasket lifecycle hook. It can be output
to either a JSON (default) or YAML file.

To hook the build lifecycle you can update your npm scripts to include the following:

```diff
// JS apps

+ "scripts": {
+   "build": "node gasket.js build"
+ }
```

```diff
// TypeScript apps

+ "scripts": {
+   "build": "tsx gasket.ts build"
+ }
```

```diff
// Using Node 24+

+ "scripts": {
+   "build": "node gasket.ts build"
+ }
```

To keep your Swagger definition file up-to-date, you can run `npm run build` whenever you make changes to the swagger property in your
`gasket.js` file or modify JSDoc comments in your routes folder. This will rebuild the Swagger file to capture the latest updates accurately.

```js
// gasket.js

export default makeGasket({
  swagger: {
    jsdoc: {
      definition: {
        openapi: '3.0.0',           // Specification (optional, defaults to swagger: '2.0')
        info: {
          title: 'Theme API',       // Title (required)
          version: '1.0.0'          // Version (required)
        }
      },
      apis: ['api.js'] // Glob path to API Docs
    },
    definitionFile: 'swagger.json', // Default
    apiDocs: '/api-docs'            // Default
  }
});
```

#### Example from YAML

In this example, the Swagger spec will not be generated, but rather demonstrates
how it can be hand-crafted via YAML file.

```js
// gasket.js

export default makeGasket({
  swagger: {
    definitionFile: 'swagger.yaml'
  }
});
```

## License

[MIT](./LICENSE.md)

<!-- LINK -->
[swagger-ui-express]: https://github.com/scottie1984/swagger-ui-express
[@fastify/swagger-ui]: https://github.com/fastify/fastify-swagger-ui
[swagger-jsdocs]: https://github.com/Surnet/swagger-jsdoc/blob/master/docs/GETTING-STARTED.md
npm package: @gasket/plugin-vitest
Description: Integrates Vitest based testing in to your Gasket application
Author: GoDaddy Operating Company, LLC
Latest version: 7.2.2

# @gasket/plugin-vitest

Creates a vitest based testing environment for your Gasket application.

## Installation

This plugin is only used by presets for `create-gasket-app` and is not installed for apps.

## Usage

When you create a new Gasket application that is configured with the `vitest`
plugin it will prepare it with a `vitest` based testing environment. It will add
the following `scripts` to the `package.json`:

- `npm test`, Runs all test files that include `*.test.` or `*.spec.`.
- `npm run test:watch` Same as `npm test` but now watches your tests and
  automatically re-runs the tests when changes are detected.
- `npm run test:coverage` Same as `npm test`, but generates coverage information
  for all the files matching the `test.coverage` options in the
  `vitest.config.js` file.


## License

[MIT](./LICENSE.md)
npm package: @gasket/preset-api
Description: Create Express-based API with Gasket
Author: GoDaddy Operating Company, LLC
Latest version: 7.6.9

# @gasket/preset-api

Framework for building API's using Gasket.

## Installation

```bash
npx create-gasket-app@latest <app-name> --presets @gasket/preset-api
```

## Docs

To see complete the list of plugins configured in your app, and what commands, lifecycles, and structures are available, run the new `gasket docs` command in your app.

## Plugins

- [@gasket/plugin-swagger](/packages/gasket-plugin-swagger/README.md)
- [@gasket/plugin-docs](/packages/gasket-plugin-docs/README.md)
- [@gasket/plugin-docusaurus](/packages/gasket-plugin-docusaurus/README.md)
- [@gasket/plugin-express](/packages/gasket-plugin-express/README.md)
- [@gasket/plugin-https](/packages/gasket-plugin-https/README.md)
- [@gasket/plugin-lint](/packages/gasket-plugin-lint/README.md)

## License

[MIT](./LICENSE.md)
npm package: @gasket/preset-nextjs
Description: Basic NextJS Framework
Author: GoDaddy Operating Company, LLC
Latest version: 7.6.9

# @gasket/preset-nextjs

Framework for building Next.js apps using Gasket.

## Installation

```
npx create-gasket-app@latest <app-name> --presets @gasket/preset-nextjs
```

## Plugins

- [@gasket/plugin-express](/packages/gasket-plugin-express/README.md)
- [@gasket/plugin-https](/packages/gasket-plugin-https/README.md)
- [@gasket/plugin-winston](/packages/gasket-plugin-winston/README.md)
- [@gasket/plugin-nextjs](/packages/gasket-plugin-nextjs/README.md)
- [@gasket/plugin-webpack](/packages/gasket-plugin-webpack/README.md)

## License

[MIT](./LICENSE.md)
npm package: @gaslamp/tech-pack-fetcher
Description: MCP server for fetching Gaslamp tech packs from gaslamp.sh and writing them to the local project
Author: Gaslamp
Latest version: 1.0.0

# @gaslamp/tech-pack-fetcher

MCP server that queries [gaslamp.sh](https://gaslamp.sh) for available ML tech packs and downloads the selected pack files into your local project.

## Install

Runs via `npx` — no global install required. Add it to your Claude Code MCP config:

```bash
claude mcp add -s user gaslamp_tech_pack_fetcher -- npx -y @gaslamp/tech-pack-fetcher
```

Or add directly to `~/.claude/claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "gaslamp_tech_pack_fetcher": {
      "command": "npx",
      "args": ["-y", "@gaslamp/tech-pack-fetcher"]
    }
  }
}
```

### Private / self-hosted registry

Override the default API with the `GASLAMP_API` environment variable:

```json
{
  "mcpServers": {
    "gaslamp_tech_pack_fetcher": {
      "command": "npx",
      "args": ["-y", "@gaslamp/tech-pack-fetcher"],
      "env": {
        "GASLAMP_API": "https://your-registry.example.com/api/v1/packs"
      }
    }
  }
}
```

## Tools

### `list_packs`

List all available tech packs from the registry.

```json
{}
```

Returns pack domains (`finance`, `retail`, `healthcare`), descriptions, recipe counts, and tags.

### `get_pack_detail`

Get full metadata for a pack including all recipes with difficulty and estimated time.

```json
{ "domain": "finance" }
```

### `fetch_pack`

Download 1–3 packs and write all files to a local directory.

```json
{
  "packs": [
    { "domain": "finance", "recipe": "credit-scoring" },
    { "domain": "healthcare", "compliance_only": true }
  ],
  "output_dir": ".gaslamp/packs"
}
```

**What gets written:**

```
.gaslamp/packs/
├── finance/credit-scoring/
│   ├── recipe.yaml
│   ├── brief.md
│   ├── data_strategy.md
│   ├── eval_criteria.md
│   ├── requirements.txt
│   ├── compliance/
│   │   ├── sr11-7_checklist.md
│   │   └── fair_lending.md
│   └── templates/
│       ├── fetch_data.py
│       └── model.py
└── healthcare/
    └── compliance/
        ├── hipaa_checklist.md
        └── fda_samd_guidance.md
```

**Returns a `gaslamp_md_snippet`** — a ready-to-paste `## Packs` section for your `gaslamp.md` file.

**Caching**: if `recipe.yaml` already exists with a matching version, the download is skipped.

## Requirements

- Node.js >= 18
- Claude Code with MCP support

## Available Packs

| Domain | Recipes |
|--------|---------|
| `finance` | `stock-ranker`, `fraud-detection`, `credit-scoring` |
| `retail` | `demand-forecast`, `churn-prediction`, `recommendation` |
| `healthcare` | `readmission-prediction`, `clinical-risk`, `medical-imaging` |
npm package: @gaslight/graphql-import
Description: [![Build Status](https://travis-ci.org/organic-scholar/gaslight.svg?branch=master)](https://travis-ci.org/organic-scholar/gaslight)
Latest version: 0.0.5

# graphql-import

[![Build Status](https://travis-ci.org/organic-scholar/gaslight.svg?branch=master)](https://travis-ci.org/organic-scholar/gaslight)


Import &amp; export definitions in GraphQL SDL (also refered to as GraphQL modules)

## Install

```sh
yarn add @gaslight/graphql-import
```

## Usage

```ts
import { importSchema } from '@gaslight/graphql-import'
import { makeExecutableSchema } from 'graphql-tools'

const typeDefs = importSchema('schema.graphql')
const resolvers = {}

const schema = makeExecutableSchema({ typeDefs, resolvers })
```

Assume the following directory structure:

```
.
├── schema.graphql
├── posts.graphql
└── comments.graphql
```

`schema.graphql`

```graphql
# import Post from "posts.graphql"

type Query {
  posts: [Post]
}
```

`posts.graphql`

```graphql
# import Comment from 'comments.graphql'

type Post {
  comments: [Comment]
  id: ID!
  text: String!
  tags: [String]
}
```

`comments.graphql`

```graphql
type Comment {
  id: ID!
  text: String!
}
```

`https://example.com/graphql`
```
# import User from 'https://exmaple.com/graphql'
```

Running `console.log(importSchema('schema.graphql'))` produces the following output:

```graphql
type Query {
  posts: [Post]
}

type Post {
  comments: [Comment]
  id: ID!
  text: String!
  tags: [String]
}

type Comment {
  id: ID!
  text: String!
}
```

## Related topics & next steps

- Static import step as build time
- Namespaces
- Support importing from HTTP endpoints
npm package: @gasnow/inpage-provider
Description: A JavaScript Ethereum provider that connects to the wallet over a stream.
Author: gasnow-engineering
Latest version: 0.1.8

# Gasnow Inpage Provider

The inpage Ethereum provider object injected by Gasnow into web pages.
Contains a lot of implementation details specific to Gasnow, and is probably
not suitable for out-of-the-box use with other wallets.

Implements the Ethereum JavaScript provider specification, [EIP-1193](https://eips.ethereum.org/EIPS/eip-1193).

## Installation

`yarn add @gasnow/inpage-provider`

## Usage

```javascript
import { initializeProvider } from '@gasnow/inpage-provider';

// Create a stream to a remote provider:
const gasnowStream = new LocalMessageDuplexStream({
  name: 'inpage',
  target: 'contentscript',
});

// this will initialize the provider and set it as window.ethereum
initializeProvider({
  connectionStream: gasnowStream,
});

const { gasnow } = window;
```

### Types

Types are exposed at `index.d.ts`.
They require Node.js `EventEmitter` and `Duplex` stream types, which you can grab from e.g. [`@types/node`](https://npmjs.com/package/@types/node).

### Do Not Modify the Provider

The Provider object should not be mutated by consumers under any circumstances.
The maintainers of this package will neither fix nor take responsbility for bugs caused by third parties mutating the provider object.

## Running tests

```bash
yarn test
```
npm package: @gasparbascur/kumoz-cli
Description: CLI para generar proyectos de Azure Functions con Service Bus
Author: Gaspar Bascur
Latest version: 1.5.0

# Kumoz CLI

[![npm version](https://img.shields.io/npm/v/@gasparbascur/kumoz-cli.svg)](https://www.npmjs.com/package/@gasparbascur/kumoz-cli)
[![npm downloads](https://img.shields.io/npm/dm/@gasparbascur/kumoz-cli.svg)](https://www.npmjs.com/package/@gasparbascur/kumoz-cli)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

CLI para generar Azure Functions production-ready con Service Bus.

## 🚀 Instalación
```bash
npm install -g @gasparbascur/kumoz-cli
```

## Uso

### Crear nuevo proyecto
```bash
kumoz init mi-proyecto
cd mi-proyecto
npm install
```

### Generar Service Bus Queue
```bash
kumoz generate service-bus-queue
```

El CLI te preguntará:
- Nombre de la queue trigger
- Nombre de la queue destino
- Nombre de la función
- Si incluir retry logic
- Si generar tests

### Código generado incluye:

✅ Retry logic con exponential backoff
✅ Structured logging con Winston
✅ Error handling completo
✅ TypeScript types
✅ Unit tests con Jest
✅ Dead-letter queue handling
✅ Correlation IDs para tracing

## Comandos disponibles

- `kumoz init <nombre>` - Crear nuevo proyecto
- `kumoz generate service-bus-queue` - Generar queue processor
- `kumoz --version` - Ver versión
- `kumoz --help` - Ver ayuda

## Documentación completa

[link q me falta]

## Licencia

MIT
npm package: @gasparrobi/find-duplicate-classes
Description: PostCSS plugin for finding duplicate classes
Author: Robert Gaspar
Latest version: 0.1.0

# postcss-test

[PostCSS] plugin test.

[PostCSS]: https://github.com/postcss/postcss

```css
.foo {
  /* Input example */
}
```

```css
.foo {
  /* Output example */
}
```

## Usage

**Step 1:** Install plugin:

```sh
npm install --save-dev postcss postcss-test
```

**Step 2:** Check you project for existed PostCSS config: `postcss.config.js`
in the project root, `"postcss"` section in `package.json`
or `postcss` in bundle config.

If you do not use PostCSS, add it according to [official docs]
and set this plugin in settings.

**Step 3:** Add the plugin to plugins list:

```diff
module.exports = {
  plugins: [
+   require('postcss-test'),
    require('autoprefixer')
  ]
}
```

[official docs]: https://github.com/postcss/postcss#usage
npm package: @gasparrobi/postcss-test
Description: PostCSS plugin test
Author: gasparrobi
Latest version: 0.0.0

# postcss-test

[PostCSS] plugin test.

[PostCSS]: https://github.com/postcss/postcss

```css
.foo {
  /* Input example */
}
```

```css
.foo {
  /* Output example */
}
```

## Usage

**Step 1:** Install plugin:

```sh
npm install --save-dev postcss postcss-test
```

**Step 2:** Check you project for existed PostCSS config: `postcss.config.js`
in the project root, `"postcss"` section in `package.json`
or `postcss` in bundle config.

If you do not use PostCSS, add it according to [official docs]
and set this plugin in settings.

**Step 3:** Add the plugin to plugins list:

```diff
module.exports = {
  plugins: [
+   require('postcss-test'),
    require('autoprefixer')
  ]
}
```

[official docs]: https://github.com/postcss/postcss#usage