ブログのCMSを考える

published: 2023-07-23

背景

現時点で記事はVSCodeで書いている。 そのため、ページ上でどのように表示されているかは開発環境を立ち上げて確認する必要がある(といってもyarn devを打ってブラウザを開くだけだが)し、画像を入れる際は画像をwebpにしてリサイズしてpublicにいれて、markdownにパスを手打ちする必要がある。

画像のほうが深刻で、ブログを引っ越してから明らかに画像の数が減っている。

以前はmicroCMSを使っていたが、ポータブルさのためにmarkdown管理に変えたためその辺を放置していた。 これを改善したい。が、入稿フォームというのはそれなりに面倒なものなので、良く考えてから作りたい。

何を作るか・どうやって作るか

どんな機能がほしいのかを考える。

投稿

これが最大の問題。いちいちVSCodeを開いてmarkdownファイルを作って~とやりたくない。 とするとサイトで認証して、入稿用サーバーをたててそこに投稿、 入稿サーバーがGitHubにPushする仕組みが必要になる。

サーバーに求められるのはGit操作。 railsでサーバー立ててそいつがGitにプッシュでいいんじゃないか。

プレビュー機能

記事ページでどのように表示されるかをリアルタイムで確認したい。 ここで、エディタとプレビューをどのように表示するかというのが問題になる。

例えばGitHubのようにタブUIを使うと、タブ切り替えという操作が挟まるのでリアルタイムで確認できない。 ページ上にエディタとプレビューを同時に表示するとレスポンシブデザインが難しい。 そこで、ブラウザレベルでウィンドウを分ける方法に挑戦してみたい。

画像投稿機能

D&Dでwebp化とリサイズ。

リッチエディタ

Monaco Editor使う。

方針

とりあえずバックエンドだけ作ってみるのがいいのでは。