Can you create and run multiple extensions for one app?

Can you create and run multiple extensions for one app?

sergio19
Shopify Partner
6 0 6

Can multiple extensions be created for an app?

 

For example, you can have a theme extension, a function extension and a checkout extension in a app.

 

I have created a function extension and a theme extension but when I do a yarn dev it only runs the theme extension.

 

How can I run multiple extensions?

Replies 5 (5)

raghav_kanwal
Shopify Partner
4 0 1

Hi, I also have the same query - Can multiple extensions be created for an app?

@sergio19 Please confirm, any workaround which you are able to figure out or still blocked on the same ?

sergio19
Shopify Partner
6 0 6

Hi, still blocked, the cloud function is installed with api, but theme and checkout extension no, I don't know how you can work with both in one app 😥

kmble
Visitor
1 0 1

Did you ever make any progress here? Shopify has done a terrible job of explaining the new Checkout Extensibility and how you're to use it from a developer standpoint. Their documentation is all over the place but nothing is cohesive. 

ianfleming464
Shopify Partner
3 1 1

Honestly I have been thinking the same lately. It looks like there's loads of decent docs but when you read a little further...it's legit all over the place. 

arogers2
Shopify Partner
3 0 0

I'm using npm not yarn, but you can translate as needed. I ran `npm run shopify app generate extension -- --reset` within my existing app. It prompted me through what type of extension, what to name it, and what language  to work in. I included the `--reset` flag with the CLI command to reset the `shopify.app.toml` file.

 

Your app's final structure will look like the example found in the docs here: https://shopify.dev/docs/apps/build/cli-for-apps/app-structure/. When I run `npm run dev`, the CLI asks which store I want to use, I select my dev store, and it offers different options for opening GraphiQL (Admin API) and previewing in the browser, among other things.

 

Hope that helps!