Shopify Polarisとは? 効率的なShopifyアプリ開発に!

Shopify Polarisとは? 効率的なShopifyアプリ開発に!

Shopify Polarisは、Shopifyのエコシステムにおいて重要な役割を果たす包括的なデザインシステムです。本記事では、Shopify Polarisの概要やメリット、デメリット、Polarisを活用したShopifyアプリの事例、Shopify Polarisを使用する際のヒントとコツを紹介します。

Shopify Polarisとは

Shopify Polaris

出典:Shopify Polaris

Shopify Polarisは、Shopifyが提供する包括的なデザインシステムです。基本的なデザインガイダンス、再利用可能なコンポーネント、デザイントークン、そして400以上のアイコンを提供しています。バージョン12では新しいデザイン言語が導入され、VS Code用の拡張機能も提供されており、開発者の利便性を高めています。

Polarisの主な目的は、開発者がShopifyの管理画面やShopifyアプリを効率的に構築し、マーチャントにとって最高の体験を提供することです。

Shopify Polarisの主要コンポーネント

Shopify Polarisは、さまざまなUIコンポーネント、デザインガイドライン、そしてアイコンセットを含む総合的なリソースを提供しています。コンポーネントには、ボタン、フォーム、モーダル、ナビゲーションなど、Shopifyアプリに必要な要素をカバーしています。また、Polarisは一貫したタイポグラフィとカラーパレットも提供しているため、Shopifyアプリ全体で統一感のあるデザインを実現できます。

Shopify Polarisを使用するメリット

Shopify Polarisを使用する際のメリットは下記になります。

開発効率を向上できる

Polarisは事前に設計された豊富なコンポーネントとパターンを提供し、包括的なデザインシステムを即座に利用可能にします。これにより、UIの構築時間が大幅に短縮され、開発者はビジネスロジックやユニークな機能の実装に集中できます。標準化されたコンポーネントの使用は、テストと品質保証のプロセスも簡素化し、全体的な開発効率を向上させます。

高品質なUIを実現できる

Polarisを使用することで、Shopifyのエコシステム全体で一貫性のあるデザインとユーザーインターフェースを提供できます。これにより、ユーザー(マーチャント)は直感的にアプリを操作でき、学習曲線が緩やかになります。さらに、アクセシビリティガイドラインに準拠したコンポーネントやレスポンシブデザインの容易な実装により、幅広いユーザーに対応した高品質なUIを実現できます。

Shopifyエコシステムとの統合に役立つ

PolarisはShopifyのエコシステムと完全に統合されており、App BridgeやShopifyの他のツールとシームレスに連携できます。これにより、より強力で統合されたアプリケーションを構築できます。また、Shopifyチームによる継続的な改善と更新、豊富な学習リソース、そして活発な開発者コミュニティからのサポートにより、常に最新のデザイントレンドとベストプラクティスに基づいたアプリ開発が可能となります。

Shopify Polarisを使用するデメリット

Shopify Polarisを使用する際のデメリットは下記になります。

デザインの柔軟性と独自性が制限される

Polarisは一貫性を重視しているため、独自のブランドアイデンティティを完全に表現することが難しい場合があります。カスタマイズの範囲が限られており、非常に独特なデザインの実現が困難です。

学習コストがかかる

Polarisの概念や使用方法を習得するには時間がかかる場合があり、特にShopifyのエコシステムに慣れていない開発者にとっては初期の学習コストが高くなる可能性があります。また、Polarisは定期的に更新されるため、アプリケーションを最新バージョンに対応させ続けるには継続的な努力が必要です。

プラットフォーム依存の懸念

Polarisを使用することでShopifyプラットフォームへの依存度が高まり、将来的にプラットフォームを変更したい場合に大規模な再設計が必要になる可能性があります。また、特定のプラットフォーム向けのデザインシステムであるため、一般的なフレームワークと比較してコミュニティサポートやサードパーティのリソースが限られている可能性があります。

Shopify Polarisを活用したShopifyアプリの事例

多くのShopifyアプリ開発者がPolarisを活用しています。下記はPolaris活用したShopifyアプリの事例になります。

Polarisを活用したShopifyアプリ:RuffRuff 予約販売

「RuffRuff 予約販売」はPolarisで開発していて、Shopifyに似た設定画面で簡単に予約販売を実施でできます。Shopify公式より最高品質アプリの証である「Built for Shopify」を獲得している日本唯一の予約販売アプリです。

予約販売だでなく、期間限定セールやVIP会員限定販売、先行割引、発売予告、後払い、購入制限、同梱制御、個数制限もアプリ1つで実現できます。


Polarisを活用したShopifyアプリ:RuffRuff 注文制限

 「RuffRuff 注文制限」はPolarisで開発していて、日本で初めてCart and Checkout Validation APIを利用したShopify アプリです。

「Cart and Checkout Validation」を利用することにより、これまでフロントでしか対応できなかった注文制限の処理をサーバサイドで実現しました。そのため、既存の注文制限アプリに比べ、より突破されにくい堅牢な注文制限を実現することが可能です。

個数制限や金額制限、同梱制限、顧客制限、決済制限などあらゆる購入制限をアプリ1つで実現できます。


Shopify Polarisの最新アップデートと今後の展望

Shopify Polarisは常に進化を続けています。最新のアップデートでは、アクセシビリティの改善や新しいコンポーネントの追加など、ユーザー体験の向上に焦点を当てています。さらに、ShopifyはPolarisをApp Bridge*1 およびアプリ拡張機能と統合し、より包括的な開発エクスペリエンスを提供しています。これにより、開発者はShopifyのエコシステムにさらに深く統合されたアプリを作成できるようになりました。

*1 App Bridgeは、Shopifyアプリケーションと Shopify 管理画面との間のシームレスな統合を可能にするJavaScriptライブラリです

Shopify Polarisを使用する際のヒントとコツ

デザイン原則を理解する

Polarisを効果的に使用するには、提供されているコンポーネントをそのまま使用するだけでなく、Shopifyのデザイン原則を理解することが重要です。また、PolarisとApp Bridge、アプリ拡張機能を組み合わせて使用することで、より強力で統合されたアプリを開発できます。注意点として、過度のカスタマイズがありますが、これはPolarisの一貫性を損なう可能性があるため注意が必要です。

Figmaでモックアップを作成してみる

Polaris Components | figma

出典:Polaris Components | figma

Shopify Polarisは、デザイナーや開発者のためのFigma UI Kitを提供しています。このUI Kitは、PolarisのコンポーネントやスタイルをFigmaで使用できるようにしたもので、デザインプロセスを大幅に効率化します。Shopify Polarisを利用してShopifyアプリの開発を検討している場合は、Figmaでアプリのモックアップを作成し、解像度を上げてから開発を進めるのもオススメです。

Sandboxでプロトタイプを作ってみる

Polaris Sandbox

出典:Polaris Sandbox

Shopify Polarisは、デザイナーや開発者のためのSandbox環境を提供しています。Polaris Sandboxは、Polarisコンポーネントを使用してUIのプロトタイプを迅速に作成できる強力なツールです。このツールを使用することで、Polarisコンポーネントへの理解が深まり、開発の初期段階でユーザーインターフェースの問題を特定し修正することで、開発プロセス全体の効率を向上できます。

最後に

Shopify Polarisは、開発者にとっては効率的な開発ツールであり、マーチャントにとっては一貫性のある使いやすいインターフェースを提供します。PolarisをApp Bridgeやアプリ拡張機能と組み合わせることで、開発者はShopifyのエコシステムにシームレスに統合されたアプリを作成でき、結果としてより優れたユーザー体験を提供できます。今後もShopifyの中核的な要素として、Polarisの重要性はさらに高まっていくと考えています。

最後に、下記のブログ記事ではPolarisを利用して開発したShopifyアプリ「RuffRuff 予約販売」や「RuffRuff 注文制限」以外にも売上拡大やブログ記事拡張におすすめのShopifyアプリをジャンル別に紹介しています。ぜひ、Shopifyアプリ選びのご参考にしてください。

おすすめのShopifyアプリ|ジャンル別に紹介

ブログに戻る
1 6
  • Shopify Liquidとは|特徴や基本構文、学習リソースまで紹介

    Shopify Liquidとは|特徴や基本構文、学習リソースまで紹介

    Tsunライターチーム

    Shopify Liquidは、Shopifyが開発したオープンソースのテンプレート言語です。本記事では、Shopify Liquidの基本概念、主な特徴、そしてその学習に役立つリソースについて解説します。

    Shopify Liquidとは|特徴や基本構文、学習リソースまで紹介

    Tsunライターチーム

    Shopify Liquidは、Shopifyが開発したオープンソースのテンプレート言語です。本記事では、Shopify Liquidの基本概念、主な特徴、そしてその学習に役立つリソースについて解説します。

  • Shopify Polarisとは? 効率的なShopifyアプリ開発に!

    Shopify Polarisとは? 効率的なShopifyアプリ開発に!

    Tsunライターチーム

    Shopify Polarisは、Shopifyのエコシステムにおいて重要な役割を果たす包括的なデザインシステムです。本記事では、Shopify Polarisの概要やメリット、デメリット、Polarisを活用したShopifyアプリの事例、Shopify Polarisを使用する際のヒントとコツを紹介します。

    Shopify Polarisとは? 効率的なShopifyアプリ開発に!

    Tsunライターチーム

    Shopify Polarisは、Shopifyのエコシステムにおいて重要な役割を果たす包括的なデザインシステムです。本記事では、Shopify Polarisの概要やメリット、デメリット、Polarisを活用したShopifyアプリの事例、Shopify Polarisを使用する際のヒントとコツを紹介します。

  • 【Tips】Shopify の GraphQL Admin API で顧客総数を取得する

    【Tips】Shopify の GraphQL Admin API で顧客総数を取得する

    小笠原 京平

    Shopifyの GraphQL Admin API の小ネタです。 Shopifyの顧客総数を取得したい場合のクエリは、いざ探そうと思ってもパッと見つからないのでメモしておきます。 対象読者 Shopify GraphQL Admin API を使ったことがある方 顧客総数を取得するクエリ 2023-07 バージョンから CustomerSegmentMemberConnection に変更があったため、2023-07より前と以降で若干クエリが異なります。 ※ changelog 2023-07以降 { customerSegmentMembers(first: 1, query: "") { totalCount } } 2023-07より前...

    【Tips】Shopify の GraphQL Admin API で顧客総数を取得する

    小笠原 京平

    Shopifyの GraphQL Admin API の小ネタです。 Shopifyの顧客総数を取得したい場合のクエリは、いざ探そうと思ってもパッと見つからないのでメモしておきます。 対象読者 Shopify GraphQL Admin API を使ったことがある方 顧客総数を取得するクエリ 2023-07 バージョンから CustomerSegmentMemberConnection に変更があったため、2023-07より前と以降で若干クエリが異なります。 ※ changelog 2023-07以降 { customerSegmentMembers(first: 1, query: "") { totalCount } } 2023-07より前...

  • Shopify Vite Plugin でテーマ拡張機能の開発体験を改善する

    Shopify Vite Plugin でテーマ拡張機能の開発体験を改善する

    小笠原 京平

    今回は Barrel が提供する Shopify Vite Plugin を導入して、テーマ拡張機能の開発体験を改善する方法をご紹介します。 対象読者 テーマ拡張機能の開発経験がある方 はじめに Shopifyのテーマ拡張機能 (Theme app extensions) はShopify アプリ開発において、ストアフロントに機能を追加するための機能です。 Liquid、JavaScript、CSSなどを使って開発することができますが、通常のアプリ開発と比較すると、ローカルでの開発体験はそれほどよくありません。 そこで、今回は Shopify Vite Plugin を導入して、開発体験を改善していきます。 Shopify Vite Plugin とは Barrel が提供する Vite用プラグインです。ViteをShopify テーマ開発に組み込んで開発体験を改善することを目的として作られていますが、テーマ拡張機能においてもその恩恵を受けることができます。...

    Shopify Vite Plugin でテーマ拡張機能の開発体験を改善する

    小笠原 京平

    今回は Barrel が提供する Shopify Vite Plugin を導入して、テーマ拡張機能の開発体験を改善する方法をご紹介します。 対象読者 テーマ拡張機能の開発経験がある方 はじめに Shopifyのテーマ拡張機能 (Theme app extensions) はShopify アプリ開発において、ストアフロントに機能を追加するための機能です。 Liquid、JavaScript、CSSなどを使って開発することができますが、通常のアプリ開発と比較すると、ローカルでの開発体験はそれほどよくありません。 そこで、今回は Shopify Vite Plugin を導入して、開発体験を改善していきます。 Shopify Vite Plugin とは Barrel が提供する Vite用プラグインです。ViteをShopify テーマ開発に組み込んで開発体験を改善することを目的として作られていますが、テーマ拡張機能においてもその恩恵を受けることができます。...

  • Shopify Admin API GraphiQLとは? 使い方やメリット・デメリットを解説

    Shopify Admin API GraphiQLとは? 使い方やメリット・デメリットを解説します

    小笠原 京平

    ShopifyのAdmin APIにはGraphQLを用いたAPIがあります。手軽に試す方法としてGraphiQL (GraphQLではなくGraphiQLなのに注意) というIDEがありますので、今回はShopify GraphiQLの使い方やメリット・デメリットを解説します。 GraphiQLとは GraphQL公式が運営しているオープンソースプロジェクトです。GraphQLをブラウザ上でインタラクティブに操作・実行することができます。 グラフィカル (/ˈɡrafək(ə)l/) と発音します。(graphicalと同じ発音) GraphQLとは GraphQLはAPIのためのクエリ言語であり、既存のデータでクエリを実行するためのランタイムです。 GraphQLはAPI内のデータの完全で理解しやすい説明を提供し、クライアントに必要なものだけを要求する力を与え、APIを長期的に進化させることを容易にし、強力な開発者ツールを可能にします。 引用: GraphQL | A query language for your API Shopify GraphiQLの使い方 Shopify GraphiQLは各ストアにアプリをインストールするだけで使えますが、Shopify Devサイト上でデモを触れるので、まずは触ってみましょう! https://shopify.dev/docs/apps/tools/graphiql-admin-api Workshopをやってみよう! Shopifyが作成した「Learn...

    Shopify Admin API GraphiQLとは? 使い方やメリット・デメリットを解説します

    小笠原 京平

    ShopifyのAdmin APIにはGraphQLを用いたAPIがあります。手軽に試す方法としてGraphiQL (GraphQLではなくGraphiQLなのに注意) というIDEがありますので、今回はShopify GraphiQLの使い方やメリット・デメリットを解説します。 GraphiQLとは GraphQL公式が運営しているオープンソースプロジェクトです。GraphQLをブラウザ上でインタラクティブに操作・実行することができます。 グラフィカル (/ˈɡrafək(ə)l/) と発音します。(graphicalと同じ発音) GraphQLとは GraphQLはAPIのためのクエリ言語であり、既存のデータでクエリを実行するためのランタイムです。 GraphQLはAPI内のデータの完全で理解しやすい説明を提供し、クライアントに必要なものだけを要求する力を与え、APIを長期的に進化させることを容易にし、強力な開発者ツールを可能にします。 引用: GraphQL | A query language for your API Shopify GraphiQLの使い方 Shopify GraphiQLは各ストアにアプリをインストールするだけで使えますが、Shopify Devサイト上でデモを触れるので、まずは触ってみましょう! https://shopify.dev/docs/apps/tools/graphiql-admin-api Workshopをやってみよう! Shopifyが作成した「Learn...

  • ブログ記事 Shopifyの必須Webhooks (Mandatory Webhooks)とは? GDPRや対応例など

    Shopifyの必須Webhooks (Mandatory Webhooks)とは? GDPR...

    小笠原 京平

    今回はShopifyアプリ開発を始めたときに詰まるポイントの1つ「必須Webhooks」について解説します。実装をしていなかったり、実装が不十分なためにレビューが通らなかった経験をされた方は多いんじゃないでしょうか?レビューで詰まらないためにも、ぜひご確認ください! Webhooksとは? Shopifyの必須Webhooksを説明する前に、Webhooksについて理解しましょう。Webhooksとは、Webアプリケーションと連携するために用いられるイベント通知の仕組みです。Webhooksを使うことで、あるWebアプリケーションで特定のイベントが起きたときに、データを受け取ったり、何かしらの動作をすることが可能になります。 エンジニアにとって身近な例でいうと、GitHubにコードをプッシュしたときに自動でビルドやテストをするときにWebhooksが使われています。 ShopifyのWebhooks そんなWebhooksはShopifyでも使うことができます。Shopifyアプリ開発では、Shopify Admin APIからWebhooksを使うことができます。また、アプリ以外でもShopify管理画面からWebhookを作成することもできます。 ShopifyのWebhooksにはHTTPSのエンドポイントのほか、Amazon EventBridgeやGoogle Cloud Pub/Subといったメッセージングサービスを使うこともできます。購読するイベントやマーチャントによっては瞬間的に大量のWebhooksを処理する必要があるため、スケールさせやすいメッセージングサービスを使ってWebhooksを処理することをおすすめします。 必須Webhooks (Mandatory Webhooks) とは? 必須Webhooksとは、Shopifyアプリを開発するときに必ず実装しなければならない3つのWebhooksのことです。この3つのWebhooksはGDPRに対応するために必要なWebhooksで、EU加盟国に関わらず、すべてのShopifyアプリはGDPRに準拠しなければなりません。必須Webhooksを実装していない場合、アプリレビューで却下されます。 (3つの必須Webhooks以外のWebhooksは任意で実装すればOKです。) また、必須Webhooksの3つはHTTPSのエンドポイントでのみ作成可能です。上述したEventBridgeやPub/Subを利用することはできません。 GDPRとは? GDPR(General Data Protection Regulation:一般データ保護規則)は、ヨーロッパ連合(EU)の個人情報保護法規で、2018年5月25日から施行されています。これは、EU全域での個人情報のプライバシーを保護し、データの取り扱い方に関して個々の人々により多くの制御権を付与するためのものです。 GDPRは、EU市民または居住者の個人データを処理する全ての組織に適用されます。これには、EU内外の組織も含まれ、EUの市民や居住者のデータを処理する場合、世界のどこにその組織があろうともGDPRの規定を守る必要があります。 GDPRの主な目的は、個人が自分の個人データをどのように収集、保存、使用されるのかを知り、そしてその制御をする権利を持つべきであるという考え方を強化し、統一化することです。これは、個人情報の透明性、アクセスの権利、修正の権利、忘れられる権利(データ削除の権利)、データ移行の権利など、いくつかの重要な権利を個々の人々に付与します。 参考: ChatGPT 必須Webhooksの対応例 上記で説明したように、必須WebhooksとはGDPRに準拠するためのWebhooksなので、顧客情報、ストア情報をデータベースなどに保存しているかどうかで対応方法が変わります。...

    Shopifyの必須Webhooks (Mandatory Webhooks)とは? GDPR...

    小笠原 京平

    今回はShopifyアプリ開発を始めたときに詰まるポイントの1つ「必須Webhooks」について解説します。実装をしていなかったり、実装が不十分なためにレビューが通らなかった経験をされた方は多いんじゃないでしょうか?レビューで詰まらないためにも、ぜひご確認ください! Webhooksとは? Shopifyの必須Webhooksを説明する前に、Webhooksについて理解しましょう。Webhooksとは、Webアプリケーションと連携するために用いられるイベント通知の仕組みです。Webhooksを使うことで、あるWebアプリケーションで特定のイベントが起きたときに、データを受け取ったり、何かしらの動作をすることが可能になります。 エンジニアにとって身近な例でいうと、GitHubにコードをプッシュしたときに自動でビルドやテストをするときにWebhooksが使われています。 ShopifyのWebhooks そんなWebhooksはShopifyでも使うことができます。Shopifyアプリ開発では、Shopify Admin APIからWebhooksを使うことができます。また、アプリ以外でもShopify管理画面からWebhookを作成することもできます。 ShopifyのWebhooksにはHTTPSのエンドポイントのほか、Amazon EventBridgeやGoogle Cloud Pub/Subといったメッセージングサービスを使うこともできます。購読するイベントやマーチャントによっては瞬間的に大量のWebhooksを処理する必要があるため、スケールさせやすいメッセージングサービスを使ってWebhooksを処理することをおすすめします。 必須Webhooks (Mandatory Webhooks) とは? 必須Webhooksとは、Shopifyアプリを開発するときに必ず実装しなければならない3つのWebhooksのことです。この3つのWebhooksはGDPRに対応するために必要なWebhooksで、EU加盟国に関わらず、すべてのShopifyアプリはGDPRに準拠しなければなりません。必須Webhooksを実装していない場合、アプリレビューで却下されます。 (3つの必須Webhooks以外のWebhooksは任意で実装すればOKです。) また、必須Webhooksの3つはHTTPSのエンドポイントでのみ作成可能です。上述したEventBridgeやPub/Subを利用することはできません。 GDPRとは? GDPR(General Data Protection Regulation:一般データ保護規則)は、ヨーロッパ連合(EU)の個人情報保護法規で、2018年5月25日から施行されています。これは、EU全域での個人情報のプライバシーを保護し、データの取り扱い方に関して個々の人々により多くの制御権を付与するためのものです。 GDPRは、EU市民または居住者の個人データを処理する全ての組織に適用されます。これには、EU内外の組織も含まれ、EUの市民や居住者のデータを処理する場合、世界のどこにその組織があろうともGDPRの規定を守る必要があります。 GDPRの主な目的は、個人が自分の個人データをどのように収集、保存、使用されるのかを知り、そしてその制御をする権利を持つべきであるという考え方を強化し、統一化することです。これは、個人情報の透明性、アクセスの権利、修正の権利、忘れられる権利(データ削除の権利)、データ移行の権利など、いくつかの重要な権利を個々の人々に付与します。 参考: ChatGPT 必須Webhooksの対応例 上記で説明したように、必須WebhooksとはGDPRに準拠するためのWebhooksなので、顧客情報、ストア情報をデータベースなどに保存しているかどうかで対応方法が変わります。...

1 6

編集プロセス

EコマースやShopifyの初学者にとって、できるだけ “やさしく” “わかりやすく” “正確に” 難しいコマース用語やマーケティング用語、ストア構築から販売までの仕組み・ノウハウを伝えることを心がけて、記事コンテンツを作成しています。

掲載情報に関して

掲載している各種情報は、株式会社Tsunが経験および、調査した情報をもとにしています。できるだけ“最新“かつ“正確“な情報の掲載に努めておりますが、内容を完全に保証するものではありません。当サイトによって生じた損害について、株式会社Tsunではその賠償の責任を一切負わないものとします。掲載情報に誤りがある場合には、お手数ですが株式会社Tsunまでご連絡をいただけますようお願いいたします。