目的
Windows 10 64bit & VSCode で、API Blueprint が使いたい
少し調べてみたが、情報が散見されていたのでまとめとして。
前提として、VSCodeは導入済み。CLIは、powershell
手順
- node.js 導入:npm
- aglio 導入:md → html 作成
- drakov 導入:APIモック選定
node.js導入
公式より msi インストーラを取得&実行。今回は、Currentを選択。
(周知の事実だと思うが、npm も導入される)
インストール完了後、コマンドで動作確認(powershell)
// node
node --version // v8.4.0
// npm
npm --version // 5.3.0
aglio 導入
npm コマンドで aglio パッケージを導入
npm install -g aglio
特に詰まる事はなかった(ログに一部、Error表記はあったが機能はしている)
導入が完了したら、md → html をテスト
// aglio のチェック
aglio --version // aglio 2.3.0
// HTML出力
aglio -i api.md -o test.html
指定したMDファイルをベースにAPI 設計書のHTMLファイルが生成される
上記のHTML出力方法は、 オプション -i でインポート元、-o がアウトプット先となる
常時、npm server 起動してhtml 確認するには以下のコマンド
aglio -i api.md --server -p 3000
npm server が起動し、localhost:[PORT]で、html閲覧可能となる。
また、元のMDファイルの変更を検知して更新時にHTML側も同期を取ってくれる
-p オプションで起動ポートが指定できる。
(最初、起動ポートが分からなくて少し困ったので、ローカル環境に色々と環境があり競合しそうであれば指定していた方が分かりやすい)
drakov 導入:APIモック選定
最初はよく名前を見たapi-mockを導入しようとして試したがインストールに失敗。
どうやら node Ver.6 以降でインストールが出来ないという状況らしい。
特にこだわりはなかったので、他に名前をよく見かけた drakov を導入。
// 導入
npm install -g drakov
// モック起動
drakov -f api.md
ブラウザやクライアントソフトで、アクセスすると記載したレスポンス内容が返却される。
※ 詰まったところ
改行コード
最初、drakov でMDファイルをしていた所、パースエラーが発生。
調べたところ、改行コードを[CRLF]→[LF]に変更したら解決。
補足
- VSCodeを使うならプラグインでいけるんじゃね?
API Elements extension 等、プラグインを漁るとかなり候補が出てくる。この辺を使う事が出来ればもっとさっくりと導入可能か?