Theme app extensions overview

Theme app extensions allow developers to extend themes in a way that protects theme code integrity and provides better app development and merchant experiences. Theme app extensions gracefully integrate with Online Store 2.0 themes, including Dawn, Shopify's Online Store 2.0 reference theme.

Sample app

You can clone Shopify's product reviews app and Dawn GitHub repositories to understand how theme app extensions work with Shopify themes. Experiment with the theme app extension to learn how the product reviews app extends Dawn, and then update your existing apps to use theme app extensions.

Designing for the best merchant experience

Apps built in the theme app extension framework don't edit theme code, which decreases the risk of introducing breaking changes to the theme, makes it easier to iterate on the content of the integration, and provides for a better merchant experience.

Merchants can use the theme editor to configure exposed settings and add app blocks in theme sections for precise positioning in a page's layout.

Benefits

Your app will benefit from using theme app extensions rather than other integration methods:

  • Theme app extensions automatically expose your app in the theme editor. You can leverage the editor’s visual editing capabilities without needing to replicate them in your app.

  • You can deploy your app at the same time to all online stores that use it. You also have access to lifecycle management for app versioning and asset hosting on the Shopify CDN.

  • A single set of integration logic and instructions works for all themes.

  • Merchants won't need to manuallly edit their theme code.

Framework

Theme app extensions contain the following resources:

  • Blocks - Liquid files that act as the entry point for what you want to inject in a theme. Block types include app blocks and app embed blocks.

  • Assets - CSS, JavaScript, and other static app content that gets injected into themes.

  • Snippets - Reusable Liquid snippets that can be used across multiple blocks.

Learn more about the theme app entensions framework.

Resources

Tools

Next steps