Get started

Our components are a collection of interface elements that can be reused across the Shopify system.

Components can be combined to help anyone building products for Shopify to efficiently design consistent experiences for merchants.

This frees us up to focus on solving unique merchant challenges, rather than reinventing interface elements that are already in use.

Getting started

The component library was designed to help developers quickly create the best experience for Shopify merchants.

Each component includes information to help you implement them, such as:

  • Explanations of the merchant problem it solves in the interface
  • Interactive examples so you can see the component in action
  • Best practices and guidelines to use the component correctly

Learn more about developing apps and themes for Shopify on our developer hub.

Installing and implementing

There are two options for installing and implementing our components, React or CSS.

React components (Recommended)

Use React components in most cases, especially if you’re building a highly interactive experience. This can be done with or without a build system.

CSS components

  • Use CSS components if you don’t have or want a build system for your project

  • Include the CSS in your HTML to implement:


Using components

You can find comprehensive instructions on how to use components in the Polaris GitHub repo. There are also example applications to explore.

Here are some basic instructions to help you get started for both React and CSS-only:

React components (Recommended)

Include the CSS in your HTML:


First, import the component into your project:

import {AppProvider, Button} from '@shopify/polaris';

Create an element using the Polaris React AppProvider component. The AppProvider component must wrap your entire app because Polaris React components will not function without it:

const app = (
    <Button onClick={() => alert('Button clicked!')}>Example button</Button>

Tell React to render that element in the DOM:

ReactDOM.render(app, domContainerNode);

CSS components

Include the CSS stylesheet in your HTML:


Add the appropriate classes to your HTML elements:

<button class="Polaris-Button">Example button</button>

Note if you’re using CSS-only you’ll need to provide your own JavaScript.

Learning resources

These resources have information on getting started with React and how to develop apps and themes for Shopify.


If you’re new to React, start with the official React Getting Started documentation. As you read through the topics, follow along using the React Hello World CodePen example.

Here are some additional resources:

Shopify’s developer hub

Learn more about developing apps and themes for Shopify on our developer hub.

Component methodology

We make our components flexible enough to meet diverse needs. Our components are set up to be restructured based on the information passed in. No matter what type of experience you’re creating, you can use components as the building blocks of your product or feature.

Each of our components has a well-documented public interface (API) with guidelines and well-defined conventions. This way, developers don’t need to worry about the underlying implementation. Instead, they can focus on creating great merchant experiences.

We ensure that our components are made for everyone. They meet accessibility standards and are responsive to any screen or device. We also put a lot of effort into optimizing the performance of the components, so everyone can build inclusive experiences that work.


Issues or feature requests can be created on the Polaris GitHub page.