LoginSignup
1

More than 1 year has passed since last update.

posted at

updated at

Swift製Webフレームワーク Vaporの紹介2020

Vaporとは

Vaporは、Swift製のWebフレームワークです。
公式URLは https://vapor.codes/ で、Vapor 本体のリポジトリ(https://github.com/vapor/vapor) には 

Vapor is a web framework for Swift.
It provides a beautifully expressive and easy to use foundation for your next website, API, or cloud project. 

と説明が書かれています。
Vapor はスター数も多く(2020年12月現在1万9千程度)、gitignore.io などVaporで開発されたアプリケーションも少しずつ増えてきました。
今回はVaporアドベントカレンダー2020の初日として、インストールとHelloWorldをしてみようと思います。

環境構築

for MacOS

公式(https://docs.vapor.codes/4.0/install/macos/)

Xcode(11.4 以上)が必要なのでApp Storeからダウンロードします。(https://apps.apple.com/us/app/xcode/id497799835?mt=12)
また Vapor4 には Swift 5.2 以上が必要なので、バージョンを確認します。

$ swift --version
Apple Swift version 5.3.1 (swiftlang-1200.0.41 clang-1200.0.32.8)
Target: x86_64-apple-darwin20.1.0

次に Vapor のプロジェクト作成が簡単にできる VaporToolBoxを インストールします。

$ brew install vapor
$ brew upgrade vapor  # すでにインストールされている場合

Vapor ToolBoxがインストールできたことを確認します。

$ vapor --help

for Linux

公式(https://docs.vapor.codes/4.0/install/linux/)
Vapor4は以下のLinuxディストリビューション & バージョンでサポートされています。

Version Version Swift Version
Ubuntu 16.04, 18.04 >= 5.2
Ubuntu 20.04 >= 5.2.4
Fedora >= 30 >= 5.2
CentOS 8 >= 5.2.4
Amazon Linux 2 >= 5.2.4

Swift がインストールされた状態でVaporToolBoxを インストールします。

$ git clone https://github.com/vapor/toolbox.git
$ cd toolbox
$ git checkout <desired version>
$ make install

Vapor ToolBoxがインストールできたことを確認します。

$ vapor --help

HelloWorld

環境構築が完了したので早速プロジェクトを作成します。
プロジェクトの作成には new コマンドを使用します。

$ vapor new プロジェクト名

vapor newコマンドを実行すると対話式でプロジェクトを作成することができます。(必要なパッケージが組み込まれた状態でプロジェクトが作成されます。)
-n フラグをつけてプロジェクトを作成するとパッケージが組み込まれない素の状態のプロジェクトを作成することができます。
今回は-n フラグをつけてプロジェクトを作ります。

$ vapor new hello -n

プロジェクト名のディレクトリが作成されれます。
ディレクトリの中に入り、 Package.swift ファイルをXcodeで開きます。

$ cd hello
$ open Package.swift

パッケージのインストールが終わったらビルドボタンを押すことでアプリを実行します。
ブラウザで http://localhost:8080/ にアクセスすると It works! と表示され、アプリケーションが起動していることが確認できます。

Xcodeを使わない場合は以下のコマンドでビルドとアプリケーションの実行をすることができます。

$ cd hello
$ vapor build
$ vapor run

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
What you can do with signing up
1