Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
@shopify/polaris-icons
Advanced tools
[![npm version](https://img.shields.io/npm/v/@shopify/polaris-icons.svg?style=flat)](https://www.npmjs.com/package/@shopify/polaris-icons)
@shopify/polaris-icons is a package that provides a collection of icons used in Shopify's Polaris design system. These icons are designed to be used in Shopify applications to maintain a consistent look and feel.
Importing Icons
You can import individual icons from the @shopify/polaris-icons package. This allows you to use specific icons in your application without importing the entire icon set.
import { CirclePlusMajor } from '@shopify/polaris-icons';
Using Icons in Components
You can use the imported icons in your components by passing them as a source to the Icon component from the Polaris library.
import { Icon } from '@shopify/polaris';
import { CirclePlusMajor } from '@shopify/polaris-icons';
function MyComponent() {
return (
<Icon source={CirclePlusMajor} />
);
}
Customizing Icon Size and Color
You can customize the size and color of the icons by passing additional props to the Icon component.
import { Icon } from '@shopify/polaris';
import { CirclePlusMajor } from '@shopify/polaris-icons';
function MyComponent() {
return (
<Icon source={CirclePlusMajor} color="red" backdrop />
);
}
react-icons is a popular library that provides a wide range of icons from various icon libraries such as Font Awesome, Material Design, and more. It offers a more extensive collection of icons compared to @shopify/polaris-icons and is highly customizable.
fontawesome is a widely-used icon library that offers a vast collection of icons. It provides both free and premium icons and is highly customizable. Font Awesome icons can be used in various frameworks and libraries, making it a versatile choice.
This package exports a JavaScript file containing the Polaris icons partners can use to build on the Shopify platform, and contains SVG files in the
/dist/svg
directory (SVG usage instructions).
Browse and search Polaris icons: https://polaris-icons.shopify.com.
Although it’s possible to use this package directly, we recommend using the icons in this package through Polaris React in combination with the Icon
component.
Install Polaris React (instructions) if you haven’t already
Polaris icons as a dependency:
Using npm:
npm install @shopify/polaris-icons --save
Or, using Yarn:
yarn add @shopify/polaris-icons
Import the Icon
component from Polaris React and any icon from Polaris icons into your project.
Import the icon component from Polaris React:
import {Icon} from '@shopify/polaris';
Import an icon from Polaris icons:
import {PlusIcon} from '@shopify/polaris-icons';
Pass the imported Polaris icon to the source
prop of the Icon
component:
<Icon source={PlusIcon} />
For projects that don’t use React, icons are also available as *.svg
files in the dist/svg
folder.
Browse the list of SVG files, hosted on the unpkg CDN (Content Delivery Network).
Suggested CSS and markup for projects that aren’t using the Polaris HTML and CSS components:
.Custom-Polaris-Icon {
display: block;
height: 2rem; /* or value equivalent to 20px */
width: 2rem; /* or value equivalent to 20px */
max-height: 100%;
max-width: 100%;
margin: auto;
}
.Custom-Polaris-Icon__Svg {
position: relative;
display: block;
width: 100%;
max-width: 100%;
max-height: 100%;
/* Icon color */
fill: #000;
}
<span class="Custom-Polaris-Icon">
<svg
viewBox="0 0 20 20"
class="Custom-Polaris-Icon__Svg"
focusable="false"
aria-hidden="true"
>
<path fill="currentColor" d="M7 13h6v6H7z" />
<path
d="M19.664 8.252l-9-8a1 1 0 0 0-1.328 0L8 1.44V1a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v5.773L.336 8.252a1.001 1.001 0 0 0 1.328 1.496L2 9.449V19a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V9.449l.336.299a.997.997 0 0 0 1.411-.083 1.001 1.001 0 0 0-.083-1.413zM16 18h-2v-5a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1v5H4V7.671l6-5.333 6 5.333V18zm-8 0v-4h4v4H8zM4 2h2v1.218L4 4.996V2z"
fill-rule="evenodd"
/>
</svg>
</span>
To add, remove, or rename icons, follow the contributing guide.
FAQs
[![npm version](https://img.shields.io/npm/v/@shopify/polaris-icons.svg?style=flat)](https://www.npmjs.com/package/@shopify/polaris-icons)
We found that @shopify/polaris-icons demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 24 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.