12
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Shopify】ノーコードで Liquid の schema を作成できるアプリを作った話

Posted at

はじめに

今回は、ノーコードで Shopify で使用されている Liquid の schema を作成できるアプリ「UnLiquidSchema」をリリースしたので、機能について紹介します。

このアプリを使用すると、以下のような Liquid コードをノーコードで生成・コピーすることができます。

"settings":[
  {
    "type": "checkbox",
    "id": "chechbox_id",
    "label": "ラベル",
    "default": true
  },
  {
    "type": "number",
    "id": "number_id",
    "label": "ラベル",
    "default": 3
  }
]

ノーコードで Shopify で使用されている Liquid の schema を作成できるアプリを開発した理由

私たちは日々、Shopify の開発業務に携わっており、Liquid schema をコーディングする機会が頻繁にあります。しかし、その都度手動でコードを書く作業は、煩雑で時間がかかるだけでなく、エラーのリスクも伴います。特に、スキーマの複雑さが増すほど、作業の効率は低下し、同じようなコードを繰り返し記述する手間が発生します。

この問題を解決するため、「UnLiquidSchema」を開発しました。このアプリでは、コーディングの知識がなくても Liquid schema を簡単に作成できる環境を提供し、業務における非効率なプロセスを大幅に削減します。また、開発者が本来注力すべきコアな機能開発に時間を割けるよう、工数の削減を目指しました。

ノーコードで Shopify で使用されている Liquid の schema を作成できるアプリの機能について

settigs の定義作成

Liquid shcema で使用可能な type から必要な type を選択します。

image.png

type に応じてフォームが表示されるので、必要な項目を入力します。

image.png

setting の追加、削除、並び替えは、各ボタンをクリックすることで行えます。

image.png

  • 追加
    image.png

  • 削除
    image.png

  • 並び替え
    image.png

settings コードの生成

画面下部の「コードを生成」ボタンを押すと、コードが生成されます。

image.png

image.png

settings コードのコピー

画面下部の「コードをコピー」ボタンを押すと、生成したコードがクリップボードにコピーされます。

image.png

"settings":[
  {
    "type": "checkbox",
    "id": "chechbox_id",
    "label": "ラベル",
    "default": true
  },
  {
    "type": "number",
    "id": "number_id",
    "label": "ラベル",
    "default": 3
  }
]

settings コードの保存

Google ログインをしている場合、生成した settings のコードが保存されます。

保存したコードは、「settings コード履歴」ページで確認できます。

image.png

「コードをコピー」ボタンを押すと、コードがクリップボードにコピーされます。

image.png

"settings":[
  {
    "type": "checkbox",
    "id": "chechbox_id",
    "label": "ラベル",
    "default": true
  },
  {
    "type": "number",
    "id": "number_id",
    "label": "ラベル",
    "default": 3
  }
]

「コードを元に新規作成」ボタンを押すと、以前作成した settings定義の状態から、settigs 定義の編集が行えます。

image.png

image.png

ノーコードで Shopify で使用されている Liquid の schema を作成できるアプリの実装について

アプリの技術スタックや機能について紹介します。

技術スタック

アプリは T3 Stack の構成で作成しました。

  • Next.js
  • TypeScript
  • tRPC
  • Prisma
  • TailwindCSS
  • Auth.js
  • Supabase
  • Vercel

今回のプロジェクトでは、Next.js の App Router を採用しました。

Google ログイン

image.png

Google のログイン機能を作成しました。

フロントの認証情報の管理は、NextAuth.js に任せています。

adapter に PrismaAdapter を設定することで、認証情報のデータを Prisma を介してデータベースに格納しています。

adapter: PrismaAdapter(db) as Adapter

まとめ

UnLiquidSchema は、ノーコードで Shopify の Liquid schema を自由に作成できるアプリです。シンプルな UI とストレスのない作業で、Shopify サイトのカスタマイズに貢献したい方にとって便利なツールです。

ご興味のある方は、ぜひご利用ください!

12
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?