Lume入門(第4回) - ページ部品をコンポーネント化して再利用する
前回は、Lumeのタグ管理を使ってページの検索性を高める方法をご紹介しました。 ここでは、SearchプラグインやPaginateプラグインを使ってタグの一覧ページを作成しました。 今回はUIの部品化と再利用がテーマです。 昨今はReactやVue等のフロントエンドフレームワークの普及によってコンポーネント指向でUIを部品化することが当たり前になっています。 LumeはフレームワークではなくSSGの位置付けですが、強力なコンポーネント機能が用意されています...
記事を読むLume入門(第3回) - ページをタグ管理して検索性を高める
前回はLumeのテンプレートエンジンとしてJSX/MDXプラグインを使用する方法を見てきました。 サイト運営が順調でページが増えてくると、目的のページを探すのが辛くなってきます。 こんなときは、ページにタグ(目印)を付けて検索性を高める手法がよく使われますね。 今回は、Lumeを使ってタグ付けされた記事の一覧ページを生成する方法をご紹介します。 また、一覧ページにリストアップする記事が多い場合に有効なページネーション機能も見ていきます...
記事を読むLume入門(第2回) - テンプレートエンジンとしてJSXとMDXを使う
前回はLumeの基本的な使い方を見てきました。 ここではテンプレート言語として、ビルトインで使えるマークダウンとMozillaのNunjucksを使いました。 ただ、マークダウンとは違い、Nunjucksはあまり世の中に浸透しているとは言えず(たいしたことはないですが)学習コストも発生します。 最近はReactエコシステム普及に伴ってJSXが広く使われています。また、マークダウンでJSXを使えるように拡張したMDXを使いたいと考える人も多いのではないでしょうか...
記事を読むLume入門(第1回) - Denoベースの静的サイトジェネレーターLumeで静的サイトを手早く作る
当サイトもそろそろ開設から2年になろうとしています。 これを機(?)に、ページ生成に使っていた静的サイトジェネレーター(SSG)をLumeに変更しました。 以前はサイトの生成にEleventy(11ty)を使っていました。 Eleventyでも大きな不満はないのですが[1]、Denoが基盤のLumeに心惹かれて移行を決断しました。 移行にあたっては、サイト自体に加えて執筆体験に大きな変更が発生しないよう配慮しました...
記事を読む