Scrapbox を中心にしたコンテンツ生成

過去をインポートするあたりから本格的にパブリックの方のスクボを耕してきて半年強くらい経った

逆にプライベートのスクボの方は少し荒れ地になってきた感はある

滅多にあるわけではないけれど、書いた URL を貼ったり渡したりすると「Scrapbox かぁ〜」という反応をされることがあったのと、仕事で AMP をバリバリ書いてるのでスクボで書いたコンテンツを AMP にして出してみてメディアっぽいのを作れるかな〜というのを試す素振りでやってみることにした

https://amp.kbys.tk

リポジトリ: https://github.com/kbystk/amp

使ってる技術とか:

@progfay/scrapbox-parser: スクボのパーサ、これがなかったらはじまらなかった。助かった

lit-ntml: lit-htmlNode.js 版。サクサク HTML が生成できてラク

GitHub Actions: 使ってみたかったから、というのもあるし、生成したコンテンツは git に格納しているので GitHub 上で完結しているとラクかな、とおもった

Netlify: おなじみホスティングサービス

簡単な仕組み解説:

Scrapbox に生えてる API を叩いてページ一覧を引いてくる

新しめなページの情報を引いてくる

AMP に対応した html を錬成

git にコミット、プッシュ

Netlify がトリガーされて公開される

これを日本時間の午前4時くらいに cron で GitHub Actions が実行してくれる

また、/hub/ホームページを参考に自分のホムペの https://kbys.tk/y にも更新されたコンテンツが流れるようにした

リポジトリ: https://github.com/kbystk/y

使ってる技術とか:

こちらは元々 Gatsby で生成してたのを Next.js の Static Export に切り替えた

そんなに難しいことはしていない

簡単なしくみ解説:

Netlify には webhook でビルドをトリガーできる仕組みがある

AMP の方の生成が終わるとこの webhook を叩いてビルドが走る

最近書かれた記事最近クリップしたページというページを定期的に剪定して、いい感じにフレッシュな状態になるようにしている

こういう CMS っぽいのを作るのは最早何度めか分からないけど、毎度楽しい

似てるかもしれんページ