hase-blog をはじめる
Obsidian で書いた Markdown を Astro で静的サイトにして、Cloudflare Workers から配信するまでの構成メモ。

このサイトは Obsidian の vault をそのままリポジトリに置き、Astro で静的ビルドして Cloudflare Workers から配信しています。CMS サーバは持ちません。
構成
- 執筆: Obsidian + Vault CMS プラグイン
- ビルド: Astro(完全静的出力)
- スタイル: Vanilla Extract
- 配信: Cloudflare Workers Static Assets
- 重量メディア: Cloudflare R2
記事の URL はノートのファイル名がそのまま articleId になります。このノートなら /article/hello-world です。
画像
相対パスで貼った画像は astro:assets が AVIF/WebP へ変換し、ハッシュ付きのファイル名で出力します。

動画
音声と動画は 25 MiB のアセット上限があるため R2 に置き、ビルド時に /media/ 配下への参照へ書き換えられます。
上の記法は、ビルド後には <video controls src="/media/sample.mp4"> になります。