SvelteKit + Newt + Github Pageでブログをデプロイするまで

48105 ワード

前提

今回、SvelteKitの勉強も踏まえてSvelteKit + NEWT + Github Pagesで簡単なブログを作ってみました。SvelteKitはNext.jsなどと比べて、まだ情報量が少なく、躓く点がいくつかあったため、ここに残そうと思います。

構成

使用した技術

  • SvelteKit : フロントエンドフレームワーク。今回は基本的に全てのページをPrerender(ビルド時に生成)する
  • Github Pages:デプロイ先として使用
  • Newt:Headless CMSとして記事の管理に利用

ファイル構成

概ねSvelteKitのテンプレートに沿った構成となっており、再利用するようなコンポーネントやライブラリはlibフォルダから参照する形になっています(あまり大きなコードではないので、libの中にまとめています)

src
 |- lib
     ---コンポーネント---
     |- header
     |- footer
     ---クライアントライブラリ---
     |- newt
     ---型定義---
     | -types
 |- routes
     |- articles
         |- [slug].svelte
	 |- [slug].ts
     |-pages
         |- [...page].svelte
	 |- [...page].ts
     ...

実装のポイント

ソースは以下にまとめているので、ここでは簡単にポイントをピックアップしながら記載していきたいと思います(Svelteの記法や動作確認方法などはSvelte公式等を参照のこと)。