@zygapp/kintone-plugin-devtool 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,323 @@
1
+ <div align="center">
2
+
3
+ # @zygapp/kintone-plugin-devtool
4
+
5
+ **kintone プラグイン開発を超簡単に**
6
+
7
+ [![npm version](https://img.shields.io/npm/v/@zygapp/kintone-plugin-devtool.svg)](https://www.npmjs.com/package/@zygapp/kintone-plugin-devtool)
8
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
9
+ [![Go](https://img.shields.io/badge/Built_with-Go-00ADD8.svg)](https://go.dev/)
10
+ [![Node.js](https://img.shields.io/badge/Node.js-18+-green.svg)](https://nodejs.org/)
11
+
12
+ <br />
13
+
14
+ Vite + HMR で kintone プラグイン開発を快適に。<br />
15
+ コードを保存すれば、即座に kintone 画面に反映されます。
16
+
17
+ </div>
18
+
19
+ ---
20
+
21
+ ## Features
22
+
23
+ | | |
24
+ |---|---|
25
+ | **Hot Module Replacement** | コード変更が即座に kintone 画面に反映。ページリロード不要。 |
26
+ | **モダンフレームワーク対応** | React / Vue / Svelte / Vanilla に対応 |
27
+ | **TypeScript サポート** | 型安全な開発環境を標準提供 |
28
+ | **プラグイン署名** | RSA 署名付きプラグイン ZIP を自動生成 |
29
+ | **複数環境デプロイ** | 開発・本番環境を分離、複数の本番環境への一括デプロイ |
30
+ | **シンプルなワークフロー** | `init` → `dev` → `build` → `deploy` の 4 ステップ |
31
+ | **クロスプラットフォーム** | macOS / Linux / Windows(Intel & ARM) |
32
+
33
+ ---
34
+
35
+ ## Quick Start
36
+
37
+ ### 1. インストール
38
+
39
+ ```bash
40
+ npm install -g @zygapp/kintone-plugin-devtool
41
+ ```
42
+
43
+ ### 2. プロジェクト作成
44
+
45
+ ```bash
46
+ kpdev init my-plugin
47
+ cd my-plugin
48
+ ```
49
+
50
+ 対話形式で以下を設定します:
51
+ - プラグイン名
52
+ - kintone ドメイン(例:`example.cybozu.com`)
53
+ - フレームワーク(React / Vue / Svelte / Vanilla)
54
+ - 言語(TypeScript / JavaScript)
55
+ - カスタマイズ対象(デスクトップ / モバイル)
56
+ - 認証情報
57
+
58
+ ### 3. 開発開始
59
+
60
+ ```bash
61
+ kpdev dev
62
+ ```
63
+
64
+ ブラウザが自動で開きます。`https://localhost:3000` の SSL 証明書を許可すると、kintone にリダイレクトされます。
65
+
66
+ ### 4. 本番デプロイ
67
+
68
+ ```bash
69
+ kpdev build
70
+ kpdev deploy
71
+ ```
72
+
73
+ ---
74
+
75
+ ## Commands
76
+
77
+ ### `kpdev init [project-name]`
78
+
79
+ 新しいプラグインプロジェクトを初期化します。
80
+
81
+ ```bash
82
+ kpdev init my-plugin
83
+ ```
84
+
85
+ **生成されるもの:**
86
+ - ソースコード(`src/main/`, `src/config/`)
87
+ - 開発用ローダープラグイン
88
+ - 開発用・本番用 RSA 秘密鍵
89
+ - SSL 証明書
90
+ - Vite 設定
91
+
92
+ ### `kpdev dev`
93
+
94
+ 開発用ローダープラグインを kintone にデプロイし、Vite dev server を起動します。
95
+
96
+ ```bash
97
+ kpdev dev
98
+ ```
99
+
100
+ **オプション:**
101
+
102
+ | オプション | 説明 |
103
+ |-----------|------|
104
+ | `--skip-deploy` | ローダープラグインのデプロイをスキップ(2回目以降の起動時に便利) |
105
+ | `--no-browser` | ブラウザを自動で開かない |
106
+
107
+ ### `kpdev build`
108
+
109
+ 本番用プラグイン ZIP を生成します。
110
+
111
+ ビルド前にバージョン更新を対話形式で選択できます(現状維持 / パッチ / マイナー / メジャー / カスタム)。
112
+
113
+ `console.error` 以外の `console.*` と `debugger` は自動的に削除されます。
114
+
115
+ ```bash
116
+ kpdev build
117
+ ```
118
+
119
+ **オプション:**
120
+
121
+ | オプション | 説明 |
122
+ |-----------|------|
123
+ | `--no-minify` | minify を無効化 |
124
+ | `--remove-console` | console.* を削除(デフォルト有効) |
125
+
126
+ **出力ファイル:**
127
+ - `dist/plugin-prod-v{version}.zip`
128
+
129
+ ### `kpdev deploy`
130
+
131
+ 本番用プラグイン ZIP を kintone にデプロイします。
132
+
133
+ 複数の本番環境への一括デプロイに対応。デプロイ先選択時に新規環境を追加することもできます。
134
+
135
+ ```bash
136
+ kpdev deploy
137
+ ```
138
+
139
+ **オプション:**
140
+
141
+ | オプション | 説明 |
142
+ |-----------|------|
143
+ | `--file` | 指定した ZIP ファイルをデプロイ |
144
+ | `--all` | 全環境にデプロイ(対話スキップ) |
145
+
146
+ ### `kpdev config`
147
+
148
+ プロジェクト設定を対話形式で変更します。
149
+
150
+ ```bash
151
+ kpdev config
152
+ ```
153
+
154
+ **設定可能な項目:**
155
+ - プラグイン情報(名前、説明、バージョン)
156
+ - 開発環境(ドメイン、認証情報)
157
+ - 本番環境の管理(追加 / 編集 / 削除)
158
+ - ターゲット(デスクトップ / モバイル)
159
+
160
+ ---
161
+
162
+ ## Project Structure
163
+
164
+ ```
165
+ my-plugin/
166
+ ├── src/
167
+ │ ├── main/ # desktop/mobile 共通コード
168
+ │ │ ├── main.tsx
169
+ │ │ ├── App.tsx
170
+ │ │ └── style.css
171
+ │ └── config/ # プラグイン設定画面
172
+ │ ├── main.tsx
173
+ │ ├── App.tsx
174
+ │ └── style.css
175
+ ├── .kpdev/
176
+ │ ├── config.json # プロジェクト設定
177
+ │ ├── manifest.json # プラグインマニフェスト
178
+ │ ├── vite.config.ts # Vite 設定(自動生成)
179
+ │ ├── certs/ # SSL 証明書
180
+ │ ├── keys/ # RSA 秘密鍵
181
+ │ │ ├── private.dev.ppk # 開発用
182
+ │ │ └── private.prod.ppk # 本番用
183
+ │ └── managed/ # ローダープラグイン(自動生成)
184
+ ├── dist/ # ビルド出力
185
+ ├── icon.png # プラグインアイコン(56x56)
186
+ ├── package.json
187
+ ├── .env # 認証情報
188
+ └── .gitignore
189
+ ```
190
+
191
+ ---
192
+
193
+ ## Authentication
194
+
195
+ 認証情報は以下の優先順位で取得されます:
196
+
197
+ ### 1. `.env` ファイル(推奨)
198
+
199
+ ```env
200
+ # 開発環境
201
+ KPDEV_USERNAME=your-username
202
+ KPDEV_PASSWORD=your-password
203
+
204
+ # 本番環境(複数対応)
205
+ KPDEV_PROD_A_USERNAME=admin-a
206
+ KPDEV_PROD_A_PASSWORD=pass-a
207
+ ```
208
+
209
+ ### 2. `.kpdev/config.json`
210
+
211
+ ```json
212
+ {
213
+ "kintone": {
214
+ "dev": {
215
+ "domain": "example.cybozu.com",
216
+ "auth": {
217
+ "username": "your-username",
218
+ "password": "your-password"
219
+ }
220
+ },
221
+ "prod": [
222
+ {
223
+ "name": "production",
224
+ "domain": "prod.cybozu.com",
225
+ "auth": {
226
+ "username": "admin",
227
+ "password": "pass"
228
+ }
229
+ }
230
+ ]
231
+ }
232
+ }
233
+ ```
234
+
235
+ > **Note:** `.env` と `.kpdev/config.json` は `.gitignore` に追加されます。認証情報をリポジトリにコミットしないでください。
236
+
237
+ ---
238
+
239
+ ## SSL Certificate
240
+
241
+ 開発サーバーは HTTPS で起動します。初回アクセス時に自己署名証明書の警告が表示されます。
242
+
243
+ ### 証明書を信頼する方法
244
+
245
+ 1. `https://localhost:3000` にアクセス
246
+ 2. ブラウザの警告画面で「詳細設定」→「安全でないサイトへ進む」を選択
247
+ 3. または、OS の証明書ストアに `.kpdev/certs/localhost.pem` を登録
248
+
249
+ ---
250
+
251
+ ## How It Works
252
+
253
+ ```
254
+ kintone
255
+ ↓ classic script
256
+ kintone-dev-loader.js(開発用プラグインとしてインストール)
257
+ ↓ dynamic import
258
+ Vite dev server (ESM + HMR)
259
+
260
+ src/main/main.* # desktop/mobile 用
261
+ src/config/main.* # プラグイン設定画面用
262
+ ```
263
+
264
+ kintone プラグインは classic script のみ対応ですが、kpdev は開発時に Vite の ESM + HMR を活用できるようローダープラグインを自動生成・デプロイします。
265
+
266
+ **開発者が意識するのは `src/` 以下のコードだけ。** ローダーや設定ファイルは kpdev が管理します。
267
+
268
+ ### 開発用と本番用の分離
269
+
270
+ - **開発用**(`private.dev.ppk`): ローダープラグイン用。プラグイン名に `[DEV]` プレフィックスが付きます。
271
+ - **本番用**(`private.prod.ppk`): 本番ビルド用。
272
+
273
+ 秘密鍵ごとにプラグイン ID が異なるため、開発用プラグインが本番環境に混入することを防ぎます。
274
+
275
+ ### CLI について
276
+
277
+ kpdev は Go で実装されたネイティブバイナリです。npm 経由でインストールすると、OS・アーキテクチャに応じた実行ファイルが自動選択されます。高速な起動と安定した動作を実現しています。
278
+
279
+ ---
280
+
281
+ ## Requirements
282
+
283
+ - **Node.js** 18 以上
284
+ - **kintone** 環境(cybozu.com)
285
+
286
+ ---
287
+
288
+ ## Supported Platforms
289
+
290
+ | OS | Architecture |
291
+ |----|--------------|
292
+ | macOS | Intel (x64) / Apple Silicon (arm64) |
293
+ | Linux | x64 / arm64 |
294
+ | Windows | x64 / arm64 |
295
+
296
+ ---
297
+
298
+ ## Troubleshooting
299
+
300
+ ### HMR が動作しない
301
+
302
+ - `https://localhost:3000` の SSL 証明書を許可しているか確認してください
303
+ - ブラウザの開発者ツールでコンソールエラーを確認してください
304
+
305
+ ### ローダープラグインのデプロイに失敗する
306
+
307
+ - `.env` または `.kpdev/config.json` の認証情報を確認してください
308
+ - kintone のシステム管理権限があるか確認してください
309
+
310
+ ### プラグイン ID が変わった
311
+
312
+ - 秘密鍵(`.kpdev/keys/`)が変更または削除された可能性があります
313
+ - 秘密鍵は一度生成したら変更しないでください
314
+ - チーム開発では `.kpdev/keys/` を Git で追跡し、全員が同じ秘密鍵を使用してください
315
+
316
+ ### Windows で証明書エラーが出る
317
+
318
+ - PowerShell を管理者権限で実行し、証明書をインポートしてください
319
+ - または、ブラウザで `https://localhost:3000` にアクセスして手動で許可してください
320
+
321
+ ## License
322
+
323
+ MIT
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zygapp/kintone-plugin-devtool",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "kintone プラグイン開発ツール - Vite + HMR による高速開発環境",
5
5
  "main": "index.js",
6
6
  "bin": {