Lexxy のホームページを単一 Jekyll サイトへ統合

basecamp/lexxy

Lexxy のドキュメントと新規ランディングページ・サンドボックスを home/ ディレクトリ配下の単一 Jekyll サイトにまとめ、カスタムドメインのルートで提供できるように構成を変更します。

背景

これまで Lexxy のウェブプレゼンスdocs/ ディレクトリ配下で GitHub Pages のサブパス(/lexxy)として提供され、トップレベルのホームページが存在しませんでした。ドキュメントはサブパス下にあり、エディタの体験ページも別途用意されていませんでした。

今回の PR の目的 は、ランディングページ、サンドボックス、既存ドキュメントを同一リポジトリ内の home/ Jekyll サイトに統合し、lexxy.dev のルートドメインで公開できるようにすることです。ランディングページの内容はプレースホルダーであり、後続のコンテンツ追加を前提とした構成です。

この変更により 開発者は単一の Jekyll プロジェクトとしてローカルで bundle exec jekyll serve するだけで、全体のサイトを確認できるようになります。

技術的な変更

ディレクトリ構成の再配置 では home/ ディレクトリが新規作成され、既存の docs/ コンテンツが home/docs/ に移動しました。さらに、ランディングページ用レイアウト home/_layouts/landing.html とサンドボックス用ページが追加され、サイト全体が home/ 基点でビルドされます。

サイト設定の変更home/_config.yml に集約され、titledescriptionurl: "https://lexxy.dev"baseurl: "" が設定されています。テーマは Just the Docs を使用し、color_scheme: lexxy によってカスタム色彩が適用されています。また、gh_edit_source: "home" が更新され、GitHub 編集リンクが新しいパスを指すようになっています。

title: Lexxy
description: A modern rich text editor for Rails
url: "https://lexxy.dev"
baseurl: ""

theme: just-the-docs
...
color_scheme: lexxy

CI/CD 設定のリネーム では、旧 docs.ymlhome.yml に変更され、working-directoryhome に統一されました。ビルド成果物のパスも home/_site へ更新され、GitHub Pages へのデプロイが新ディレクトリを対象に行われます。

name: Deploy Site

on:
  push:
    branches: [main]
    paths:
      - 'home/**'
      - '.github/workflows/home.yml'
  workflow_dispatch:

jobs:
  build:
    runs-on: ubuntu-latest
    defaults:
      run:
        working-directory: home
    steps:
      - uses: actions/checkout@v6
      - uses: ruby/setup-ruby@v1
        with:
          ruby-version: '3.3'
          bundler-cache: true
          working-directory: home
      - uses: actions/configure-pages@v3
        with:
          working-directory: home
      - uses: actions/upload-pages-artifact@v4
        with:
          path: home/_site

リポジトリ内部の参照更新 では、README.md の画像パスが home/docs/images/home.screenshot.png に、ドキュメント URL が https://lexxy.dev/docs/ に、AGENTS.md の開発手順リンクが home/docs/development.md に変更されています。.gitignore も同様に home/_site/ など新パスを除外対象としています。

-# Jekyll docs
-/docs/_site/
-/docs/.jekyll-cache/
-/docs/.jekyll-metadata
-/docs/Gemfile.lock
+# Jekyll site
+/home/_site/
+/home/.jekyll-cache/
+/home/.jekyll-metadata
+/home/Gemfile.lock

不要となったコンテンツ として、docs/try-it.md が全削除され、エディタ体験ページは新たに home/_layouts/landing.html から提供される構造へ置き換えられました。

設計判断

単一サイトへの統合 は、プロジェクトの公開入口を一元化し、設定ファイルやビルドパイプラインをシンプルに保つ設計選択です。baseurl を空文字に設定することで、ルートドメインでの提供が直接可能になり、既存のリンク構造を大幅に変更せずに済みます。

テーマ拡張のアプローチ は、Just the Docs の既存構造を保持しつつ、home/_sass/color_schemes/lexxy.scss にカラーパレットを上書きする形で実装されました。これにより、テーマのアップデート時にカスタム色が再利用しやすくなります。

CI 設定のリネーム は、ワークフロー名と対象ディレクトリを明示的に分離することで、将来的に別プロジェクトのデプロイ設定と混同しないようにする意図が示されています。機能面での変更はなく、home ディレクトリだけをビルド対象とする点で安全性が保たれています。

プレースホルダーコンテンツ の採用は、実装段階でのスケルトン提供として位置付けられ、後続の実装者がデザインや機能を追加できるようにするための戦略的選択です。

まとめ

本 PR は、Lexxy のオンラインプレゼンスを ルートドメイン配下の単一 Jekyll サイト に再構築し、ランディングページ、サンドボックス、ドキュメントを統合しました。home/_config.yml による設定の集約、.github/workflows/home.yml のリネーム、.gitignore の更新、そしてカスタムカラーとレイアウトの追加により、開発者は同一ビルドパイプラインでサイト全体を管理できるようになりました。CNAME が追加されたことでリポジトリ側のドメイン設定は完了していますが、実際の DNS 設定は別途必要です。

記事メタデータ

Generated by:
gpt-oss-120b for DiffDaily
LLM Trace:
88587fcf

この記事はAIによって自動生成されています。内容の正確性については、必ずソースコードやPRを確認してください。

品質レビュー結果

Review Status:
リトライ後承認
Review Count:
3回 (改善を経て承認)
Reviewed by:
gpt-oss-120b for DiffDaily

Review Criteria:

記事構成 ✓ PASS

Title, Context, Technical Detailの存在と明確さ

リード文→背景→技術的な変更→設計判断→まとめの 5 部構成が明確で、必須要素(総論・背景・技術詳細・結論) がすべて揃っています。

カスタムMarkdown構文 ✓ PASS

シンタックスハイライト・GitHubリンク記法の正確性

ファイル名付きシンタックスハイライトは正しい形式 (```yaml:home/_config.yml 等) で記述され、PRリンクは [#1152](URL) の形で正しくリンク化されています。

対象読者への適合性 ✓ PASS

エンジニア向けの適切な技術レベルと表現

Jekyll、GitHub Actions、CI/CD などエンジニア向けの専門用語が中心で、初心者向けの過度な説明はありません。

パラグラフ・ライティング ✓ PASS

トピックセンテンス・1段落1トピック・段落長

各セクションは総論・各論・結論のパラグラフ構成になり、段落は 1 文がトピックセンテンスで始まり、1 段落に 1 トピック、長さも適切です。空行で区切られています。

Diff内容との照合 ✓ PASS

コードブロックとDiff内容の一致

記事中のコードブロックは Diff に示された変更内容と一致しており、ファイル名・内容・変更点が正確に反映されています。

技術用語の正確性 ✓ PASS

技術用語の正確な使用

Jekyll、baseurl、CNAME、Just the Docs などの技術用語が正しく使用されています。

説明の技術的正確性 ✓ PASS

技術的主張の正確性と論理性

技術的な説明は PR の目的・変更点と合致し、根拠が明示されており誤りはありません。

事実の突合 ✓ PASS

PR情報による主張の裏付け(ハルシネーション検出)

すべての主張が PR の Title、Description、Diff、Commit 情報に裏付けられており、推測や捏造はありません。

数値・固有名詞の確認 ✓ PASS

PR番号・コミットID・バージョン等の正確性

PR 番号 #1152、ファイル名、設定値などは正確です。

タイトル・説明との一致 ✓ PASS

記事タイトル・説明とPR内容の一致

記事タイトルは PR の趣旨「New home for lexxy」を日本語で適切に表現しており、内容と一致しています。

外部知識の正確性 ✓ PASS

PRに記載のない外部知識(LTS、サポート状況など)の不使用

LTS やリリース日程など PR に無関係な外部情報は含まれていません。

時間表現の正確性 ✓ PASS

時間表現がPR情報と一致しているか

「DNS 設定は別途必要」など時間表現は PR の記述と一致しています。