# Fable でブログを再構築する pt.3

- URL: <https://krymtkts.github.io/posts/2023-05-14-rebuild-blog-with-fable-pt3.html.md>
- Date: 2023-05-14
- Author: krymtkts
- Tags: fsharp, fable

[krymtkts/blog-fable](https://github.com/krymtkts/blog-fable) [Fable](https://fable.io/) でブログを再構築しようとしている。
こちらに手をかけてることで最近 [krymtkts/pocof](https://github.com/krymtkts/pocof) 触っておらず多少不安になってきたが、もう少し Fable に慣れるまではお預け。

簡単に Index のページに最新ポストをコピるのと、 投稿一式から Archive ページを作るのをやってみている。 [#4](https://github.com/krymtkts/blog-fable/pull/4)
徐々にコード量が増えることでここは関数にしておいて～とか、コレコレをモジュールにしておいて～とか、楽しくなってきた。
一緒に Tags のページを作りたかったのだけど、いま Markdown 内のタグはじめとしたメタデータをパースしてないから作れない。
先に [remark](https://github.com/remarkjs/remark) の導入やらないと投稿のメタデータであるタグは(自力で書かない限り)抜けないから、後回しにしておいた。

今回 Archive ページを作るにあたりコードを書いてると、設定で分ける想定をしてコードを汎化した方がスッキリする雰囲気になってきた。
元は完全に自分用のイメージで作っているので、設定に基づいて出力をどうこうするというのは考えてなかった。
現時点ではベタの部分と、設定(というか関数の引数)によって挙動を決める部分が混じり合っているので、徐々に後者に倒していく。

とはいえまだ Tags ページと RSS ができてないので、今後の予定としては以下かなと。

- [marked](https://github.com/markedjs/marked) → [remark](https://github.com/remarkjs/remark) へ移行する
- Markdown ファイルのメタデータ(YAML)が読めるようになるので Tags ページが作れるようになる
- RSS 機能を作成する
- 全体的な汎化で設定の切り出し
- ブログのカラーテーマを作る(今は元コードから引き継いだ [Bulma](https://bulma.io/) のスタイルが適用されてるだけ)
- 既存ブログとの互換性調整 etc

いまんとこ毎週末のスキマ時間で亀進捗出してるので、多少作業が多かろうが大丈夫な気がしてきたな。
最後の互換性のやつだけあんま自信ないけど、リンク切れだけは起こらないように慎重に URL を調整する。
RSS フィードのは、わたしがリーダー側の仕組みがよくわかってなくて、どうなるかわからん。
実際過去に自分が購読してるフィードも全部再配信みたいになってることがあった。せめてそういうのはなくしたいが、先述の通りどうなるかわからん。
わたしの観測範囲ではわたし以外にも一人だけ RSS 購読者がいるっぽいし、たまーに記事が参照されてることもあるので、なるべき気をかけたい。

---

あと GitHub の streak 365 まで 100 日切ってた。残りも淡々と続けてこー。
