Vapor の MacBook Air M3 へのインストール、Xcode 雑感
Vapor は ThinkPad に入れて遊んでいたが、MacBook Air を購入したのでこちらにも入れてみた。
ThinkPad というか Windows で Vapor を入れるのは事前に Swift 周りの環境を整えてあればそれほど難しくない。WSL は必須だと思う。
他の Web アプリケーションフレームワークではインストールがうまくいかなかったり、動作がうまくいかなかったものもあって、そういう観点からも Vapor は大変すばらしかったのである。MacBook Air へのインストールは Windows 機のインストールの 10 倍くらい簡単だった。まったく手間がないといっていいと思う。
Vapor のインストール
公式のドキュメントのとおりに進めばもう完了という感じだが、一応あとあとのためにログを残しておく。
まずは Swift のバージョンチェック。Xcode を入れてあるので、もちろん最新版が入っている。
$ swift --version
swift-driver version: 1.115 Apple Swift version 6.0 (swiftlang-6.0.0.9.10 clang-1600.0.26.2)
Target: arm64-apple-macosx14.0
続いて Vapor のインストール。brew
で行った。
$ brew install vapor
...
==> Downloading https://ghcr.io/v2/homebrew/core/vapor/manifests/18.7.5
##################################################################################################################################################### 100.0%
==> Fetching vapor
==> Downloading https://ghcr.io/v2/homebrew/core/vapor/blobs/sha256:5d0e1fa0fe4b21022520634975d94938e6cbb98938d3a0491b28303455c26119
##################################################################################################################################################### 100.0%
==> Pouring vapor--18.7.5.arm64_sonoma.bottle.tar.gz
🍺 /opt/homebrew/Cellar/vapor/18.7.5: 6 files, 7.3MB
==> Running `brew cleanup vapor`...
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
インストールはこれだけ。ちょっと、インストール後の確認。これで vapor
コマンドが使えるようになる。CLIがあるのは便利。
$ vapor --help
Usage: vapor <command>
Vapor Toolbox (Server-side Swift web framework)
Commands:
build Builds an app in the console.
clean Cleans temporary files.
heroku Commands for working with Heroku.
new Generates a new app.
run Runs an app from the console.
Equivalent to `swift run App`.
The --enable-test-discovery flag is automatically set if needed.
supervisor Commands for working with supervisord.
xcode Opens an app in Xcode.
Use `vapor <command> [--help,-h]` for more information on a command.
プロジェクトを作成してみる。作成には vapor new
コマンドをつかう。-n
は質問について自動で no を回答するオプション。
$ vapor new hello -n
Cloning template...
name: hello
Would you like to use Fluent (ORM)? (--fluent/--no-fluent)
y/n> no
fluent: No
Would you like to use Leaf (templating)? (--leaf/--no-leaf)
y/n> no
leaf: No
Generating project files
+ Package.swift
+ entrypoint.swift
+ configure.swift
+ routes.swift
+ .gitkeep
+ AppTests.swift
+ .gitkeep
+ Dockerfile
+ docker-compose.yml
+ .gitignore
+ .dockerignore
Creating git repository
Adding first commit
プロジェクトの編集
作成したプロジェクトにある Package.swift を Xcode で開くと必要な依存関係が読み込まれ、実行準備が整う。実は最初は慣れた VSCode で編集をしようと思ったが、Mac な環境だと逆に VSCode のほうが Swift の編集環境を作るのが面倒なことに気づいた。
ということで、Vapor を使った開発は Xcode 上で行うことが決定。
Xcode で開発を始めて気づいたのだが、ローカルで実行をする際に Xcode 上にある三角の形状の実行ボタンを押すことでアプリケーションを起動できるのは大変良い。VisionOS 向け開発でも同様に実行ボタンでアプリを実行できるが、それと同じ感覚でサーバーサイド Swift を実行できるのは操作感がシームレスでストレスがない。
また、新規プロジェクトを作成した際に生成される Dockerfile
や docker-compose.yml
を使うとすぐにローカル上に Docker コンテナを起動することができる。これまた便利なのでおすすめしたい。
ちょっとした告知
10月23日水曜日に Apple Japan にて visionOS勉強会 の7回目が開催される。そこで LT をしてくる予定なので、ご都合があえばぜひ。