6
2

More than 3 years have passed since last update.

Vuguに触れてみた(環境構築編)

Last updated at Posted at 2020-05-25

はじめに

一時期小耳に挟んだ Vugu という技術について、今更ながら触れてみたので記事にしてみました。

Vuguとは

Golang で、 Vue.js っぽくフロントエンド を記述できるライブラリです。
WebAssebmly で実行されるのでコードの漏洩がなかったり、実行速度も比較的高速らしいです。
公式URLは下記
https://www.vugu.org/
2020/04/26v0.3.0 が出たようなので、まだまだ発展途上の技術ではあります。

環境構築

環境構築だけなら、下記公式の手順を行なっていけばできます。
https://www.vugu.org/doc/start

前提

Golangv1.14 以上らしいので、予めインストールをお願いします。
Macで、homebrewを使っていれば、下記コマンドだけでGolangのインストール可能です。

% brew install go

その他の方法に関しては、公式のインストールをご確認ください。
https://golang.org/doc/install

vgrunのインストール

下記コマンドでvgrunのインストール、その他ツール群をインストールします。

[hoge@mac] ~/vugu_sample
% go get -u github.com/vugu/vgrun
[hoge@mac] ~/vugu_sample
% vgrun -install-tools
2020/05/24 17:20:08 Installing vugugen
2020/05/24 17:20:13 Installing vgrgen
[hoge@mac] ~/vugu_sample

サンプルプロジェクトのダウンロード

公式の方がサンプルプロジェクトを用意してくださっているので、
こちらをダウンロードして利用していきます。
https://github.com/vugu-examples

下記コマンドで可能です。
(今回はsimpleリポジトリを利用しています。)

vgrun -new-from-example=simple .

上記コマンドを実行すると、ファイルがダウンロードされているかと思います。
go.mod も落ちてくるので助かりますね。

% ls -la
total 56
drwxr-xr-x   9 user staff   288  5 24 17:29 ./
drwxr-xr-x+ 99 user staff  3168  5 24 17:29 ../
-rw-r--r--   1 user  staff    24  5 24 17:29 .gitignore
-rw-r--r--   1 user  staff  1070  5 24 17:29 LICENSE
-rw-r--r--   1 user  staff   231  5 24 17:29 README.md
-rw-r--r--   1 user  staff   662  5 24 17:29 devserver.go
-rw-r--r--   1 user  staff    39  5 24 17:29 generate.go
-rw-r--r--   1 user  staff    48  5 24 17:29 go.mod
-rw-r--r--   1 user  staff  2380  5 24 17:29 root.vugu

サーバーの実行

下記コマンドでサーバーを立ち上げます。

% vgrun devserver.go
2020/05/24 17:31:39 Starting HTTP Server at "127.0.0.1:8844"

その後、 http://127.0.0.1:8844/ にアクセスします。
下記画面が表示されれば起動しています!

スクリーンショット 2020-05-24 17.34.16.png

ちなみに、 root.vugu の内容を修正すると、ホットリロードで変更を反映してくれます。

終わりに

ほぼ公式チュートリアルの通りの内容になってしまいましたが、以上で環境構築手順は終了です。
現状のフロントエンドの代替となるかと言われると微妙な気がしますが、
golang でフロントエンドが書けるのは嬉しいですね。
次回はroot.vuguの内容を修正したり、構文について見ていこうかと思います。

6
2
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
6
2