デモ用にD3.jsでいろいろな種類のグラフを作成する必要が出てきたので、JSとCSSを適当に配置すればこれまた適当にHTMLを作ってくれるWebサーバーをGolangで作ってみた。
→ ソースはこちら
Usage
go build MockSwitch.go
mkdir hoge
echo "document.body.appendChild(document.createTextNode('Hello MockSwitch'));" > hoge/hoge.js
./MockSwitch
Browse http://localhost:8000/hoge
構成
バイナリと同じ場所に新しいフォルダを作成してファイルを配置した後に起動させればHTMLが出力される。
空のHTML
以下のように空フォルダを用意してから http://localhost:8000/hoge
にアクセスすると空のHTMLが表示される。
MockSwitch
└ hoge
JSのみ
例えば上記のUsageのようにJSファイルだけを用意してから http://localhost:8000/hoge
にアクセスすると「Hello MockSwitch」が表示される。
MockSwitch
└ hoge
└ hoge.js
MDの扱い
.md
ファイルに関してはGitHubのパーサーを利用してHTMLにフォーマットするので、 .md
ファイルの簡易ビューワーとしても使える。
MockSwitch
└ hoge
└ hoge.md
複数ファイル
複数のファイルを突っ込んだ場合は拡張子に従ってHTMLの適切な場所に展開される。もし同じ拡張子が複数ある場合は辞書順に表示されるので頭に数字などを付け加えて制御する。
MockSwitch
└ hoge
└ 0-util.css
└ hoge.css
└ hoge.js
└ hoge.md
共通ファイル
jQueryやBootstrap、D3.jsなどの共通ファイルについては「dist」フォルダを作成してその中に突っ込んでおくと自動的に拾って表示する。
MockSwitch
└ dist
│ └ d3.js
└ hoge
└ 0-util.css
└ hoge.css
└ hoge.js
└ hoge.md
おすすめ
新しいページを作るたびにHTML5のテンプレート探してコピペしてローカルにWebサーバー準備してって人なのに複数のJSを書いて動作比較のデモしなきゃいけないっていうニッチな用途におすすめです(稀)。