open-index/open-npm huggingface dataset:
npm package: @shopify/app-bridge-utils
Description: **[Join our team and work on libraries like this one.](https://www.shopify.ca/careers)**
Author: Shopify Inc.
Latest version: 3.5.1
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# `@shopify/app-bridge-utils`

**Shopify is doubling our engineering staff in 2021! [Join our team and work on libraries like this one.](https://smrtr.io/5GGrc)**

This package contain utilities for your App Bridge app.

## Utilities

| Utility                                  |                                                                                                                                 | Description                                                                                                              |
| ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `setupModalAutoSizing`                   | [README](https://github.com/Shopify/app-bridge/tree/master/packages/app-bridge-utils/src/utilities/README.md#modal-auto-sizing) | Create an iframe modal that updates its height to fit the page content                                                   |
| **[beta]** `getSessionToken`             | [README](https://github.com/Shopify/app-bridge/tree/master/packages/app-bridge-utils/src/utilities/README.md#get-session-token) | Return a `Promise` of session token used by **Next Generation Embedded Authorization**                                   |
| **[beta]** `getAuthorizationCodePayload` | [README](https://github.com/Shopify/app-bridge/tree/master/packages/app-bridge-utils/src/utilities/README.md#get-authorization) | Return a `Promise<AuthCode.Payload>` containing an authorization code used by **Next Generation Embedded Authorization** |
| **[beta]** `authenticatedFetch`          | [README](https://github.com/Shopify/app-bridge/tree/master/packages/app-bridge-utils/src/utilities#authenticated-fetch)         | Return an authenticated `fetch` function                                                                                 |
| **[beta]** `userAuthorizedFetch`         | [README](https://github.com/Shopify/app-bridge/tree/master/packages/app-bridge-utils/src/utilities#user-authorized-fetch)       | Return a `fetch` function to handle requests that require per-user access tokens                                         |

## License

[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE.md)
npm package: @shopify/app-cli-node-generator-helper
Description: helpers to generate code for shopify-app-node
Author: Shopify Inc.
Latest version: 1.2.2
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @shopify/app-cli-node-generator-helper

[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE.md)
[![Build Status](https://travis-ci.com/Shopify/app-cli-node-generator-helper.svg?branch=master)](https://travis-ci.com/Shopify/app-cli-node-generator-helper)


Helpers to generate code in [Shopify's node app](https://github.com/shopify/shopify-app-node) typically used with the [Shopify-App-CLI](https://github.com/Shopify/shopify-app-cli). Currently generates page templates, calls to the Billing API and the code to register and receive webhooks.

See the [Shopify-App-CLI](https://github.com/Shopify/shopify-app-cli) for more information about running these commands through the CLI. 

## Usage

This repository is used by [Shopify-App-CLI](https://github.com/Shopify/shopify-app-cli) to help generator code in [our node app](https://github.com/Shopify/shopify-app-node) You can clone or fork it yourself, but it’s faster and easier to use Shopify App CLI, which handles additional routine development tasks for you.

## License

This respository is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
npm package: @shopify/argo-admin
Description: Argo Admin is a library that enables developers to write custom JavaScript to be sent to and rendered within the Shopify Admin UI on Web, Android, and iOS. It makes use of Shopify's [remote-ui](https://github.com/Shopify/remote-ui) library, which exposes 
Latest version: 0.11.1
Deprecated: @shopify/argo-admin has been deprecated. Please install @shopify/admin-ui-extensions and update your code. Visit https://shopify.dev/apps/tools/cli/troubleshooting\#product-subscription-app-extension for more information.
npm package: @shopify/argo-admin-cli
Description: CLI commands to help with developing with Argo
Author: Shopify
Latest version: 0.12.0
Deprecated: `@shopify/argo-admin-cli` has been deprecated. Please install `@shopify/admin-ui-extensions-run` and update your build/server scripts. Visit https://shopify.dev/apps/tools/cli/troubleshooting\#product-subscription-app-extension for more information.

# Argo Admin CLI

The Argo Admin CLI allows you to build and preview Argo Admin Extensions. This tool is intended to help partners test Argo Extensions before publishing to Shopify.
It comes packaged with [Shopify CLI](https://shopify.github.io/shopify-app-cli/core), so when you create an extension using Shopify CLI's `shopify create extension` command, your project will automatically consume this package.

Start using this tool in one of two ways:

1. **Create an extension with [Shopify CLI](https://shopify.github.io/shopify-app-cli/core/#create)**  
    Shopify CLI clones `argo-admin-template` repo, which consumes this package to build and serve Argo Extensions it generates
1. **Manually clone the [argo-admin-template](https://github.com/Shopify/argo-admin-template)**  
    Bypass Shopify CLI and follow the set up steps in the README from `argo-admin-template`

## How to use

When consumed in a project, the command `argo-admin-cli` becomes available to the project. The command can be used to build and serve Argo Admin Extensions.

To use this package in an Argo Extension project, run:
```sh
npm install @shopify/argo-admin-cli
```

or

```sh
yarn add @shopify/argo-admin-cli
```

See usage details in the [API docs](./api.md).

## Local development of this tool

To make and preview changes from `./src`, run a local server from this project using:

```bash
yarn server
```
npm package: @shopify/argo-admin-host
Description: Argo Host is a mock host that renders Argo components in the [Argo Playground](../argo-playground/README).
Latest version: 0.9.0
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# Argo Host

Argo Host is a mock host that renders Argo components in the [Argo Playground](../argo-playground/README).
npm package: @shopify/argo-admin-react
Description: Argo Admin React is built on top of Argo Admin. It allows a developer to write React-style scripts.
Latest version: 0.11.1
Deprecated: @shopify/argo-admin-react has been deprecated. Please install @shopify/admin-ui-extensions-react and update your code. Visit https://shopify.dev/apps/tools/cli/troubleshooting\#product-subscription-app-extension for more information.
npm package: @shopify/argo-checkout
Description: The API for Argo extensions that run in Shopify’s Checkout
Latest version: 0.10.3
Deprecated: @shopify/argo-checkout has been deprecated. Please install @shopify/checkout-ui-extensions and update your code.

# `@shopify/argo-checkout`

This library contains type definitions and other utilities for writing Argo extensions in Shopify’s checkout. However, nothing in this library is strictly required to write an Argo extension. As a developer building an Argo extension, you can forego the utilities this library provides entirely, and instead use the [global `shopify` API](documentation/globals.md) directly in a plain JavaScript file. The script below is a valid Argo script without any additional processing:

```js
shopify.extend('Checkout::Feature::Render', (root, api) => {
  const button = root.createComponent('Button', {
    onPress() {
      console.log('Upsold!');
      api.done();
    },
  });

  button.appendChild('Buy now');

  root.appendChild(button);
});
```

Keeping in mind that any utility provided by this library is only a convenience API on top of the `shopify` global, the rest of the documentation for this library will show examples using JavaScript imports from the `@shopify/argo-checkout` library. Using JavaScript modules in this way requires a [build step](../packages/argo-run), but can provide useful developer experience features and opportunities for build-time performance optimizations.

## Getting started

Before you dig in to what this library has to offer, please read through the [getting started guide](https://docs.google.com/document/d/1JqTUEBXWZ2gKC7bfWc0wy7i6zHtHmldd3ef4N3FHoeU/edit#heading=h.1256j7138hx).

## API

This package provides utilities, types, and documentation for the many different APIs an Argo extension can access. Before you write your first extension, you should read through the following documentation in order:

- Details about [the globals available to Argo extensions](documentation/globals.md)
- The list of [checkout extension points](documentation/extension-points.md)
- An explanation of how [extensions can render UI natively in checkout](documentation/rendering.md)
- The list of [components available to Argo extensions](documentation/components.md)

Once you’ve read the documents above, you’re ready to write a checkout extension. If you’re wanting to learn even more, this repo has a few additional guides that cover techniques for writing larger, more complex extensions:

- Strategies for [unit testing extensions](documentation/testing.md)
- [`@shopify/argo-checkout-react`](../argo-checkout-react), which allows complex extensions to render using all the power of [React](https://reactjs.org)
npm package: @shopify/argo-post-purchase
Description: The API for Argo extensions that run in the post-purchase step of Shopify’s Checkout
Latest version: 0.9.3
Deprecated: @shopify/argo-post-purchase has been deprecated. Please install @shopify/post-purchase-ui-extensions and update your code. Visit https://shopify.dev/apps/tools/cli/troubleshooting/\#post-purchase-checkout-extension for more information.
npm package: @shopify/argo-post-purchase-react
Description: React bindings for @shopify/argo-post-purchase
Latest version: 0.9.5
Deprecated: @shopify/argo-post-purchase-react has been deprecated. Please install @shopify/post-purchase-ui-extensions-react and update your code. Visit https://shopify.dev/apps/tools/cli/troubleshooting/\#post-purchase-checkout-extension for more information.
npm package: @shopify/argo-webpack-hot-client
Description: A custom webpack-hot-client implementation that works in the web worker environment of an Argo extension
Latest version: 0.1.7
Deprecated: @shopify/argo-webpack-hot-client has been deprecated. Please install @shopify/ui-extensions-webpack-hot-client and update your code.

# `@shopify/argo-webpack-hot-client`

This package provides utilities for automatically reloading an Argo script when content changes. The tools provided are similar to [`webpack-hot-client`](https://github.com/webpack-contrib/webpack-hot-client), but supports being run in a web worker and using the `self.shopify` API for "full" reloads.

## Installation

```bash
$ yarn add @shopify/argo-webpack-hot-client --dev
```

## Usage

You’ll reference two parts of this package in your webpack configuration:

- Include the `@shopify/argo-webpack-hot-client/worker` file in an array of files for the `entry` config.
- Import the `ArgoHotClient` plugin and include it in your webpack configuration. This plugin **should not** be used in production builds. It also includes webpack’s `HotModuleReplacementPlugin` automatically, so do not include it manually in your configuration.

```ts
import {ArgoHotClient} from '@shopify/argo-webpack-hot-client';

export function createWebpackConfig() {
  return {
    // Rest of config...
    entry: [
      // Make sure this entry appears first!
      '@shopify/argo-webpack-hot-client/worker',
      // Other entries
      'app/index',
    ],
    plugins: [
      // The order of your webpack plugins usually doesn’t matter
      new ArgoHotClient(),
    ],
  };
}
```
npm package: @shopify/ast-utilities
Description: Utilities for working with Abstract Syntax Trees (ASTs)
Author: Shopify Inc.
Latest version: 3.0.0
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# `@shopify/ast-utilities`

This package has been deprecated and removed. You should use `@babel/traverse` and/or `remark` directly.
npm package: @shopify/async-swc-plugin
Description: swc transform plugin for `@shopify/async`
Author: Shopify Inc.
Latest version: 0.7.6

# shopify_async_swc_plugin

Plugin for [`@shopify/async`](https://github.com/Shopify/quilt/tree/main/packages/async).

This plugin will look for any functions imported from the specified packages. It will then iterate over each reference to that function and, if the reference is a call expression where the first argument is an object, and that object has a `load` function, will mark it for processing. The adjustment is simple: it simply adds an `id` method that returns a Webpack-specific identifier based on the first dynamic import in the `load` method, allowing the function to use this identifier to mark the module as used.

```js
import { createAsyncComponent } from "my-package";

createAsyncComponent({
  load: () => import("../SomeComponent"),
});

// Becomes:

createAsyncComponent({
  load: () => import("../SomeComponent"),
  id: () => require.resolveWeak("../SomeComponent"),
});
```

## Usage

To load plugins, you may use `swcrc`'s `jsc.experimental` configs:

```
{
  jsc: {
    ...
   experimental: {
     ...
     cache_root: String // optional, specify where swc will create wasm bytecode cache
    // list of plugins. If `pluginname` is resolvable to npm package, it'll try to load from installed npm packages.
    // or it can be an absolute path to the .wasm binary
     plugins: [ ['@shopify/async-swc-plugin'] ]
   }
}
```
npm package: @shopify/babel-plugin-convert-empty-typescript-file-to-es-module
Description: Turns empty TypeScript files into ES modules for better webpack tree-shaking
Author: Shopify Inc.
Latest version: 0.3.0
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# `@shopify/babel-plugin-convert-empty-typescript-file-to-es-module`

## 📦💨 This package has deprecated

`@babel/plugin-transform-typescript` as of version `7.14.4` supports transforming typescript files that would be empty into valid [es modules](https://github.com/babel/babel/pull/13314).
npm package: @shopify/babel-plugin-graphql-js-client-transform
Description: Babel plugin for transforming raw GraphQL queries into @shopify/graphql-js-client query builder syntax
Author: Shopify Inc.
Latest version: 1.0.0

# babel-plugin-graphql-js-client-transform

This Babel plugin will transform any tagged raw GraphQL query to [Shopify/graphql-js-client](https://github.com/Shopify/graphql-js-client) query builder syntax.

## Table Of Contents

- [Installation](#installation)
- [Usage](#usage)
- [Examples](#examples)
- [License](http://github.com/Shopify/babel-plugin-graphql-js-client-transform/blob/master/LICENSE.md)

## Installation
```bash
$ yarn add babel-plugin-graphql-js-client-transform
```

### In your `.babelrc`
```
{
  "plugins": [
    "graphql-js-client-transform"
  ]
}
```

By default, the plugin will search for the tag `gql`. This value is configurable by passing in a `tag` option to the plugin.

```
{
  "plugins": [
    ["graphql-js-client-transform", {"tag": "customTag"}]
  ]
}
```

## Usage

Simply tag your raw GraphQL queries and the plugin will transform them. An instance of
[Shopify/graphql-js-client](https://github.com/Shopify/graphql-js-client)
must be supplied to the tag.

## Examples

The following are example usages with the default variable name.

#### Example 1
Convert a simple query.

##### Source Code
``` js
client.send(gql(client)`
  query {
    shop {
      name
    }
  }
`);
```

##### Transformed Code
```js
const _document = client.document(); // Creates a document to store the query
_document.addQuery((root) => {
  root.add('shop', (shop) => {
     shop.add('name');
  });
});

client.send(_document);
```

#### Example 2
The query can also be stored inside a variable instead of being sent directly.

##### Source Code

```js
const query = gql(client)`
  query {
    shop {
      name
    }
  }
`;

client.send(query);
```

##### Transformed Code
```js
const _document = client.document(); // Creates a document to store the query
_document.addQuery((root) => {
  root.add('shop', (shop) => {
     shop.add('name');
  });
});

const query = _document;

client.send(query);
```

## License

MIT, see [LICENSE.md](http://github.com/Shopify/babel-plugin-graphql-js-client-transform/blob/master/LICENSE.md) for details.

<img src="https://cdn.shopify.com/shopify-marketing_assets/builds/19.0.0/shopify-full-color-black.svg" width="200" />
npm package: @shopify/blockchain-components
Description: Shopify's Blockchain Components package
Author: Shopify Inc.
Latest version: 1.0.1
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# `@shopify/blockchain-components`

[![npm version](https://img.shields.io/npm/v/@shopify/blockchain-components.svg?label=@shopify/blockchain-components)](https://www.npmjs.com/package/@shopify/blockchain-components) [![CI](https://github.com/Shopify/blockchain-components/actions/workflows/ci.yml/badge.svg)](https://github.com/Shopify/blockchain-components/actions?query=branch%3Amain) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](../../.github/contributing.md)

## Contributing

Pull requests are welcome. See the [contribution guidelines](../../.github/contributing.md) for more information.

## License

MIT &copy; [Shopify](https://shopify.com/), see [LICENSE.md](LICENSE.md) for details.

<a href="https://shopify.com" target="_blank">
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset="../../images/shopify-light.svg">
    <source media="(prefers-color-scheme: light)" srcset="../../images/shopify-dark.svg">
    <img alt="Shopify Logo" src="../../images/shopify-dark.svg">
  </picture>
</a>
npm package: @shopify/browserlist-config
Description: Shareable Browserslist configuration for Shopify.
Author: Shopify Inc.
Latest version: 0.0.4
Deprecated: use @shopify/browserslist-config

<a href="http://www.shopify.com/"><img src="https://cdn.shopify.com/assets2/press/brand/shopify-logo-main-small-f029fcaf14649a054509f6790ce2ce94d1f1c037b4015b4f106c5a67ab033f5b.png" alt="Shopify" width="200" /></a>

#### Shareable [Browserslist](https://github.com/ai/browserslist) configuration for Shopify.

## Supported Browsers

| Browser                     | Version |
| --------------------------- | ------- |
| Chrome & Chrome for Android | last 3  |
| Firefox                     | last 3  |
| Edge                        | last 2  |
| Internet Explorer           | 11+     |
| Explorer Mobile             | 11+     |
| Safari                      | 8+      |
| iOS                         | 8       |
| Android                     | 11+     |

[List all supported browsers](http://browserl.ist/?q=last+3+chrome+versions%2C+last+3+firefox+versions%2C+last+2+versions%2C+safari+%3E%3D+8%2C+ios+%3E%3D+8%2C+ie+%3E%3D+11%2C+explorermobile+%3E%3D+11%2C+android+%3E%3D+4.4)

## Installation

Install the module using yarn or npm.

```shell
$ yarn add browserslist-config-shopify
```

```shell
$ npm install browserslist-config-shopify
```

## Usage

### package.json

```json
{
  "browserslist": ["extends browserslist-config-shopify"]
}
```
npm package: @shopify/browserslist-config
Description: Shareable browserslist configuration for Shopify.
Author: Shopify Inc.
Latest version: 3.0.2

# `@shopify/browserslist-config`

[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](../../LICENSE.md) [![npm version](https://badge.fury.io/js/%40shopify%2Fbrowserslist-config.svg)](https://badge.fury.io/js/%40shopify%2Fbrowserslist-config.svg)

Shareable [browserslist](https://github.com/ai/browserslist) configuration for Shopify.

## Supported Browsers

| Browser                     | Version |
| --------------------------- | ------- |
| Chrome & Chrome for Android | last 3  |
| Firefox                     | last 3  |
| Opera                       | last 3  |
| Edge                        | last 3  |
| Safari                      | last 3  |
| iOS                         | >= 13.4 |

You can list all supported browsers by running `npx browserslist "last 1 firefoxandroid versions, last 3 chrome versions, last 3 chromeandroid versions, last 3 firefox versions, last 3 opera versions, last 3 edge versions, last 3 safari versions, ios >= 13.4"`

Shopify employees can learn more by visiting the [browser support Vault page](https://vault.shopify.io/pages/1524-Browser-support)

## Installation

Install the module.

```shell
$ yarn add @shopify/browserslist-config
```

## Usage

### package.json

```json
{
  "browserslist": ["extends @shopify/browserslist-config"]
}
```
npm package: @shopify/buy-button-js
Description: BuyButton.js allows merchants to build Shopify interfaces into any website
Author: Shopify Inc.
Latest version: 3.0.6

# BuyButton.js

[BuyButton.js on NPM](https://www.npmjs.com/package/@shopify/buy-button-js)

BuyButton.js is a highly customizable UI library for adding e-commerce functionality to any website. It allows you to create interactive UI components such as product listings and shopping carts with minimal configuration, while allowing you to easily customize the appearance and behaviour of the components.
It uses the [JS Buy SDK](http://shopify.github.io/js-buy-sdk/) to connect to your Shopify store, giving you access to your products and collections.

To get started, take a look at [the documentation](http://shopify.github.io/buy-button-js/).
For questions, suggestions and feedback, please <a href="https://github.com/Shopify/buy-button-js/issues">create an issue</a>.

## BuyButton.js v3.0 troubleshooting

### Checkout showing Online Store password page

If your Online Store is password protected, users will be shown your Online Store password page when attempting to go to checkout. The best way to resolve this is to add [this redirect theme](https://github.com/instantcommerce/shopify-headless-theme) to your Online Store and remove password protection.

## Development

```
yarn
cp index.example.html index.html
```

- Add your API key and shop domain to index.html
- Set a product ID in index.html

```
yarn run start

```

Will watch for changes, compile src/ to tmp/ using babel & browserify, and run a server on port 8080.

## Testing

```
yarn run test
```

will run full test suite locally

```
yarn run test-dev
```

Will watch for changes and run test suite.

## Documentation

To run docs locally, install jekyll:

```
gem install jekyll
```

```
yarn run docs
```

Doc server will run at <http://localhost:4000/buy-button-js/>
Docs source files are located in /docs.
Docs are automatically deployed to gh-pages from main.
npm package: @shopify/checkout-ui-extensions
Description: The API for UI Extensions that run in Shopify’s Checkout
Latest version: 0.27.3

# `@shopify/checkout-ui-extensions`

This library contains type definitions and other utilities for writing UI extensions in Shopify’s checkout. However, nothing in this library is strictly required to write a UI extension. As a developer building a UI extension, you can forego the utilities this library provides entirely, and instead use the [global `shopify` API](documentation/globals.md) directly in a plain JavaScript file. The script below is a valid UI extension script without any additional processing:

```js
shopify.extend('Checkout::Dynamic::Render', (root, api) => {
  const button = root.createComponent('Button', {
    onPress() {
      console.log('Upsold!');
    },
  });

  button.appendChild('Buy now');

  root.appendChild(button);
});
```

Keeping in mind that any utility provided by this library is only a convenience API on top of the `shopify` global, the rest of the documentation for this library will show examples using JavaScript imports from the `@shopify/checkout-ui-extensions` library. Using JavaScript modules in this way requires a [build step](https://shopify.dev/apps/checkout/custom-fields/getting-started#step-2-preview-your-extension), but can provide useful developer experience features and opportunities for build-time performance optimizations.

## Getting started

Before you dig in to what this library has to offer, read through the [Checkout UI extensions overview](https://shopify.dev/api/checkout-extensions/checkout), and a getting started guide from one of the [checkout extension examples](https://shopify.dev/apps/checkout/custom-fields/getting-started).

## API

This package provides utilities, types, and documentation for the many different APIs a UI extension can access. Before you write your first extension, you should read through the following documentation in order:

- Details about [the globals available to UI extensions](documentation/globals.md)
- The list of [checkout extension points](documentation/extension-points.md)
- An explanation of how [extensions can render UI natively in checkout](documentation/rendering.md)
- The list of [components available to UI extensions](documentation/components.md)

Once you’ve read the documents above, you’re ready to write a checkout extension. If you’re wanting to learn even more, this repo has a few additional guides that cover techniques for writing larger, more complex extensions:

- Strategies for [unit testing extensions](documentation/testing.md)
- [`@shopify/checkout-ui-extensions-react`](../checkout-ui-extensions-react), which allows complex extensions to render using all the power of [React](https://reactjs.org)
npm package: @shopify/checkout-ui-extensions-run
Description: A command line interface for developing and building Checkout UI Extensions
Latest version: 0.7.4

# `checkout-ui-extensions-run`

This package provides a command line interface for developing and building Checkout UI Extensions.

## Installation

```bash
$ yarn add @shopify/checkout-ui-extensions-run --dev
```

## Usage

This package will add a `checkout-ui-extensions-run` binary to your project. You can execute this binary directly, or through yarn:

```bash
$ node_modules/.bin/checkout-ui-extensions-run <command>
$ yarn checkout-ui-extensions-run <command>
```

### `checkout-ui-extensions-run dev`

> alias: `checkout-ui-extensions-run serve`

```bash
$ yarn checkout-ui-extensions-run dev
```

This command will start a local development server for your extension. This development server, based on [`webpack-dev-middleware`](https://github.com/webpack/webpack-dev-middleware), will serve the JavaScript file for your extension, and will recompile it as you make changes to your codebase.

This command will print the `localhost` address of the asset server when it starts up. To control the port the server will bind to, you can pass the `--port` flag:

```bash
$ yarn checkout-ui-extensions-run dev --port 3000
```

### Browser extension and `/data` endpoint

During development, the dev server exposes a `/data` endpoint which serves the `api_key` entry of the `.env` file and a json-parsed version of the `extension.config.yml`.

This endpoint is consumed by a browser extension, that we share with partners, which makes it easier to test locally developed post purchase extensions.

### `checkout-ui-extensions-run build`

```bash
$ yarn checkout-ui-extensions-run build
```

This command will run your extension through [webpack](https://webpack.js.org) to produce a highly-optimized asset. Once generated, the estimated size of the asset will be printed to the console.

The extension asset will be placed in the `build` directory adjacent to the directory in which you ran the command. By default, its name will be `main.js`, but this can be customized using the `--filename` flag:

```bash
$ yarn checkout-ui-extensions-run build --filename extension.js
```
npm package: @shopify/cli-hydrogen
Description: The Hydrogen extension for the [Shopify CLI](https://shopify.dev/apps/tools/cli). Hydrogen is a set of tools, utilities, and best-in-class examples for building a commerce application with [Remix](https://wwww.remix.run).
Latest version: 11.1.14

# @shopify/cli-hydrogen

The Hydrogen extension for the [Shopify CLI](https://shopify.dev/apps/tools/cli). Hydrogen is a set of tools, utilities, and best-in-class examples for building a commerce application with [Remix](https://wwww.remix.run).

[Check out the docs](https://shopify.dev/custom-storefronts/hydrogen)

## Contributing

The most common way to test the cli changes locally is to do the following:

- Run `pnpm run build` in this directory (`packages/cli` from the root of the repo).
- Run `npx shopify hydrogen` anywhere else in the monorepo, for example `npx shopify hydrogen init`.
- If you want to test a command inside of a template, run the command from within that template or use the `--path` flag to point to another template or any Hydrogen app.
- If you want to make changes to a file that is generated when running `npx shopify hydrogen generate`, make changes to that file from inside of the `templates/skeleton` directory.