vercel.json用のJSON Schemaを作った。

# 今回作ったもの

Vercelを使用する際に、vercel.jsonというVercelのコンフィグファイルを書くことがあると思います。

ルート、ヘッダー、リダイレクト、Serverless Function、リージョンの設定をする際に使いますが、補充が効かず、いちいちドキュメントを確認しながら書くのもめんどくさいと思います。

そこで、vercel.jsonを書く際に、補充、検証ができるようにJSON Schemaを作ってみました。

# $schema で vercel.json にSchemaを設定することは不可能

どういうことかというと下記のような書き方で、Schemaを指定できません。。

// vercel.json

{
  "$schema": "https://vcs.now.sh"
}

この状態で、vercelまたはvcコマンドを使用すると、エラーが発生します。

# VS Code の json.schemas を使用する

$schemaを使用せずとも、VS Codeの設定には、json.schemasという項目がありfileMatchで一致したファイルに指定したSchemaを適用できます。

// .vscode/settings.json

{
  "json.schemas": [
    {
      "fileMatch": [
        "/vercel.json"
      ],
      "url": "https://vcs.now.sh"
    }
  ]
}

# VS Code 以外のエディタ

VS Code 以外のエディタにほぼ触れたことがないので、私には分からないです...

ご自身で調べてください、すいません。

# 注意

routesを使用してもcleanUrls, trailingSlash, redirects, rewrites, headersを設定していた場合にエラーになりません