Lexxy のホームページを単一 Jekyll サイトへ統合
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 に集約され、title、description、url: "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.yml が home.yml に変更され、working-directory が home に統一されました。ビルド成果物のパスも 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 設定は別途必要です。