LoginSignup
3
3

More than 1 year has passed since last update.

kintoneのプラグイン作成手順(webpack-plugin-kintone-pluginを使う)

Last updated at Posted at 2021-10-19

kintoneのプラグインを作ってみましょう!
環境は windows10 + VSCode です。
windows11 でもできるのかな👀(試してない)

今回は create-pluginwebpack-plugin-kintone-plugin を使って、
create-plugin で作成されるサンプルプラグインをビルドして、アップロードしてみました。

※以下のページを参考に手順をまとめてみました。

プラグイン作成の手順

プラグイン作成~アップロードの手順はざっくりこんな感じです。

  • プラグイン作成用のディレクトリ(フォルダー)を準備しておく
  • create-pluginをインストールする(グローバルインストール。初回だけ)
  • プラグイン用のプロジェクトを作る
  • プロジェクトにwebpack-plugin-kintone-pluginインストールする
  • webpack.config.jsつくる
  • manifest.jsonを編集する
  • package.jsonを編集する
  • プラグインのアイコンを準備する
  • ビルド&アップロード

プラグイン作成用のディレクトリ(フォルダー)を準備しておく

どこでもいいのですが、プラグイン作成用のディレクトリを作っておきましょう。
ディレクトリ名は kintonePlugin としてみました。
image.png

PowerShellなどでカレントディレクトリをkintonePluginに移動しておきましょう。

cd kintonePlugin

create-pluginをインストールする(グローバルインストール。初回だけ)

create-pluginをインストールします。
「kintoneプラグインの雛形を作成することができるCLIツール」です。
グローバルインストールするので、最初の1回だけでOK。
今後プラグインを作成する時にはこの手順は飛ばします。
(create-plugin自体のアップデートはお忘れなく)

npm install -g @kintone/create-plugin

プラグイン用のプロジェクトを作る

sample というプラグインを作ってみましょう。

create-kintone-plugin sample

このコマンドを実行すると↓のように対話型でサンプルプロジェクトが作成されます。

kintoneプラグインのプロジェクトを作成するために、いくつかの質問に答えてください :)
では、はじめましょう!



? プラグインの英語名を入力してください [1-64文字] sample
? プラグインの説明を入力してください [1-200文字] sample
? 日本語をサポートしますか? Yes
? プラグインの日本語名を入力してください [1-64文字] (省略可) さんぷる
? プラグインの日本語の説明を入力してください [1-200文字] (省略可) さんぷる
? 中国語をサポートしますか? No
? プラグインの英語のWebサイトURLを入力してください (省略可)
? プラグインの日本語のWebサイトURLを入力してください (省略可)
? モバイルページをサポートしますか? Yes
? @kintone/plugin-uploaderを使いますか? Yes

少し待つとこんな感じで作成できましたよ~!と表示されます。

Success! Created sample at sample

npm start

  ファイルの変更を監視してプラグインのzipを自動的に作成するプロセスを起動します
  その後、@kintone/plugin-uploaderにより、プラグインのzipは自動的にアップロードされます

npm run build

  プラグインのzipを作成します

npm run lint

  ESLintを使ってJavaScriptのソースコードをチェックします

まずは次のコマンドを実行してください
その後、あなたのkintone環境の情報を入力してください

  cd sample
  npm start

kintoneプラグイン開発をはじめましょう!
開発に関する情報はcybozu developer network:

  https://developer.cybozu.io

sample ディレクトリが作成されるので、カレントディレクトリを移動しておきます。

cd sample

webpack-plugin-kintone-pluginインストール

公式ページによると

webpack と一緒に plugin-packer を動かすための CLI ツールです
webpack を使ってプラグインファイルをパッケージングしたい人向けのツールとなります。

webpackで色々とまとめたい時にきっと便利。
というわけでやってみましょう。

sample ディレクトリにいることを確認して、webpack-plugin-kintone-pluginwebpackwebpack-cli をインストールします。
sample ディレクトリ内の、node_modules にインストールされます。

npm install --save-dev @kintone/webpack-plugin-kintone-plugin webpack webpack-cli

webpack.config.jsを作成する

sample ディレクトリ直下にwebpack.config.jsというファイル名のファイルを作成します。

PowerShellでやるならこんな感じ。

New-Item webpack.config.js

webpack.config.js はこんな風に書きましょう。

webpack.config.js
const path = require("path");
const KintonePlugin = require("@kintone/webpack-plugin-kintone-plugin");

module.exports = {
  mode: "development",
  entry: {
    desktop: "./src/js/desktop.js", // PC用のプラグインのコード
    mobile: "./src/js/mobile.js", // スマホ用にプラグインを作らない場合は削除
    config: "./src/js/config.js", // プラグイン設定用のjs
  },
  output: { // webpackでギュッとなったjsファイルは、src > js > distに入るよ~!
    path: path.resolve(__dirname, "src", "js", "dist"),
    filename: "[name].js",
  },
  plugins: [
    new KintonePlugin({
      manifestJSONPath: "./src/manifest.json",
      privateKeyPath: "./private.ppk",
      pluginZipPath: "./dist/plugin.zip", // プラグインのzipファイル(アップロードするファイル)ができる場所
    }),
  ],
};

manifest.json編集

sample ディレクトリの src ディレクトリ内にmanifest.json ファイルがあります。
この manifest.jsondesktopconfigmobile のjsファイルのパスを変更します。

distをはさむ~

"js/desktop.js" → "js/dist/desktop.js"
"js/config.js" → "js/dist/config.js"
"js/mobile.js" → "js/dist/mobile.js"

※下図のように、jsファイルのパスを変更します。
image.png

webpackでギュッとしたコードは、dist内にあるよー!というのを
manifest.jsonで設定している感じです。

package.json編集

sample ディレクトリ直下にある package.json ファイルの、
scripts"build": "~~~","build": "webpack --mode production", に変更します。

package.json
  "scripts": {
    "start": "node scripts/npm-start.js",
    "upload": "kintone-plugin-uploader dist/plugin.zip --watch --waiting-dialog-ms 3000",
    "develop": "npm run build -- --watch",
    "build": "webpack --mode production", 
    "lint": "eslint src"
  },

プラグインのアイコンを準備する

プラグインのアイコンを準備します。
sample > src > image > icon.png
に置きます。

image.png

私は↓↓こんなアイコンを準備しました👀絵心欲しい。

icon.png

ビルド&アップロード

ここまでできたら、npm start しましょう。

npm start

うまくいくとこんな感じでやり取りがあり・・・、アップロードされます。
image.png

プラグインを使う

アプリの設定→プラグインから、サンプルを選択して追加しましょう。

image.png

プラグインの設定をします。

「あいうえお」って入れましょう。

image.png

保存してアプリを開いたら・・・
Hello kintone plugin!
あいうえお
image.png

やった!プラグイン作成に成功しました!!!

あとは、jsをお好みに変えて、素敵なプラグインを作ってね!👀❤❤

3
3
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
3
3