---
title: app generate extension
description: Generates a new app extension.
source_url:
  html: 'https://shopify.dev/docs/api/shopify-cli/app/app-generate-extension'
  md: 'https://shopify.dev/docs/api/shopify-cli/app/app-generate-extension.md'
api_name: shopify-cli
---

# app generate extension

Generates a new [app extension](https://shopify.dev/docs/apps/build/app-extensions). For a list of app extensions that you can generate using this command, refer to [Supported extensions](https://shopify.dev/docs/apps/build/app-extensions/list-of-app-extensions).

Each new app extension is created in a folder under `extensions/`. To learn more about the extensions file structure, refer to [App structure](https://shopify.dev/docs/apps/build/cli-for-apps/app-structure) and the documentation for your extension.

#### Flags

The following flags are available for the `app generate extension` command:

* **--auth-alias \<value>**

  **string**

  **env: SHOPIFY\_FLAG\_AUTH\_ALIAS**

  Alias of the Shopify account to use for authentication.

* **--client-id \<value>**

  **string**

  **env: SHOPIFY\_FLAG\_CLIENT\_ID**

  The Client ID of your app.

* **--flavor \<value>**

  **string**

  **env: SHOPIFY\_FLAG\_FLAVOR**

  Choose a starting template for your extension, where applicable. Required if non interactive when the selected extension template supports multiple flavors.

* **--json-schema**

  **env: SHOPIFY\_FLAG\_JSON\_SCHEMA**

  Print the command's JSON schemas.

* **--no-color**

  **env: SHOPIFY\_FLAG\_NO\_COLOR**

  Disable color output.

* **--no-input**

  **env: SHOPIFY\_FLAG\_NO\_INPUT**

  Disable interactive prompts and browser authentication.

* **--path \<value>**

  **string**

  **env: SHOPIFY\_FLAG\_PATH**

  The path to your app directory.

* **--reset**

  **env: SHOPIFY\_FLAG\_RESET**

  Reset all your settings.

* **--verbose**

  **env: SHOPIFY\_FLAG\_VERBOSE**

  Increase the verbosity of the output. May include sensitive data.

* **-c, --config \<value>**

  **string**

  **env: SHOPIFY\_FLAG\_APP\_CONFIG**

  The name of the app configuration.

* **-n, --name \<value>**

  **string**

  **env: SHOPIFY\_FLAG\_NAME**

  name of your Extension. Required if non interactive.

* **-t, --template \<value>**

  **string**

  **env: SHOPIFY\_FLAG\_EXTENSION\_TEMPLATE**

  Extension template. Required if non interactive.

### Examples

* #### App generate extension

  ##### app generate extension

  ```sh
  shopify app generate extension [flags]
  ```

***
