2024-09-17 投稿

ブログ移行計画

現状について

こんにちは。

相良です。
ちょっと文体が変わったって?
そうかもしれません。

しばらく更新が止まっていますが、
改めてこのブログをリニューアルしていく予定です。

単なる書き物を保管する場所から、
モダンWeb開発の実践の場としていきたいと考えています。

移行イメージ

移行イメージ

上記画像に挙げた通り、現在の非常にシンプルな構成から、
AWS Lamda等を使用、管理画面化などを念頭に

コスト的にはむしろ再構築後のほうが若干上がると思いますが、
クラウドリソースなどを活用してより実践的な場になるのではないかと思っています。

  • サイトビルド処理をGitHub ActionsからAWS Lambdaへ移行
  • 記事のMarkdownファイルをGitHubレポジトリからAmazon S3へ移行
  • 記事(Markdown)管理画面の作成(またはCMSの利用)
  • Storybookの利用

サイトビルド処理をGitHub ActionsからAWS Lambdaへ移行

GitHub ActionsのNodeJS環境で npm run generate などをしているのですが、
これをLambdaで行いたいと思っています。

Lambdaを使うことで、サーバレス関連の知見を深めていきたいという狙いがあります。

記事のMarkdownファイルをGitHubレポジトリからAmazon S3へ移行

現状記事がGitHubレポジトリにある状態なのですが、 記事の文章という可変なデータがレポジトリにハードコードされているというのは、
移植性に欠けるのであまりスマートではない設計かと思います。

一方でMarkdownという形式自体はとても汎用性のあるものなので残すべきだと思います。 データベースの1つの値として保持するよりも信頼がおけます。

ちなみに記事を編集するときに差異を確認する上ではGitの差分がとても優秀だったりするのですが・・・
本来的な使い方ではないかと思います。

記事(Markdown)管理画面の作成(またはCMSの利用)

記事をS3に保存するようになりますが、それを簡単に編集できるようにしたいです。
ブラウザ上で記事にアクセスして保存したらビルドされるといったような流れを想定しています。

MarkdownがS3に保存されたらなるべく早く移行したいです。
「サクッと投稿・更新できない」ストレスは執筆体験を損ないます。

管理画面はAWS Amplifyなどでホスティングしたいですが、
構築するにはそこそこ時間がかかりそうなので、以下のようなCMSを利用するのもありかと思っています。

The Markdown CMS | Tina

  • GUI上で編集・保存できる
  • ヘッドレスCMSとしてAPIを提供している
  • Markdown形式で保存できる

上記を満たすいい感じのオープンソースを利用させていただくのがよさそうです。

Storybookの利用

フロントエンドのコードを資産化するために、Storybookは使えそうです。
Next.jsやReactなどフロントライブラリと相性がよく、
コンポーネントごとのプレビューやテストが可能なので、
徐々に改善を繰り返すサイト開発では便利なのかもしれないと思っています。

移行スケジュール(目標)

年内もしくは3月くらいまでに移行できたらベストだとは思っています。

  • 9月 AWS Lambdaへ移行
  • 10月 Storybookによるコンポーネントカタログ作成
  • 11-12月 CMS利用 or 管理画面開発
  • 1-3月 リニューアル完了