イベントページの構造改善とナビゲーション変更

rails/website

Rails公式サイトのイベント情報ページが /world から /events に移行し、Rails Worldを含む包括的なイベント情報を提供する構造に改善されました。この変更により、コミュニティイベント全体を俯瞰できるランディングページが確立されます。

背景

従来、Rails公式サイトのイベント情報は /world というURLでRails World単体のページとして存在していました。グローバルナビゲーションの「Events」リンクも /world を指しており、Rails World以外のコミュニティイベント情報へのアクセスポイントが不明確でした。イベント情報の発見性を高め、Rails Worldを含む様々なコミュニティ活動を一元的に案内する必要がありました。

このPRは、承認されたモックアップに基づいて新しいイベントホームページを構築し、Rails Worldのページを専用URLに移動させることで、イベント情報のアーキテクチャを再構成しています。

技術的な変更

ナビゲーション構造の変更:

_data/nav.yml でグローバルナビゲーションの「Events」リンク先が変更されました:

# 変更前
- title: Events
  url: /world

# 変更後
- title: Events
  url: /events

イベントページの拡充:

_pages/events.html が大幅に拡張され、125行のコンテンツが追加されました。新しいページ構造は以下の3つのセクションで構成されています:

  • ヒーローセクション: 「Where Rails Comes Together」というメッセージでコミュニティイベントの意義を提示
  • ビジュアルセクション: Rails Worldのステージ画像(events-rw-header-wide.jpg)を配置
  • 詳細セクション: Rails World 2026の日程・場所を含む説明文と、詳細ページへのリンク
<div class="events heading common-padding--bottom common-padding--top-small">
  <div class="container">
    <div class="heading__body">
      <div class="heading__headline common-headline">
        <h1>Where Rails Comes Together</h1>
        <h2 class="thin">
          Worldwide opportunities to connect, learn, and collaborate.
        </h2>
      </div>
    </div>
  </div>
</div>

専用スタイルシートの追加:

新規ファイル _sass/modules/_events.scss が作成され、イベントページ専用のスタイル定義が追加されました:

.events {
  &.heading {
    h2.thin {
      @extend h4;
    }
  }

  &.cards {
    .container > h2 {
      font-size: 47px;
      line-height: 43px;
      letter-spacing: -0.02em;
      font-weight: bold;
      color: $color-red;
    }

    p.date {
      font-size: 24px;
    }
  }
}

このスタイルシートは、.events 名前空間の下に headingcardstext の3つのバリエーションを定義しており、セクションごとに異なるタイポグラフィを適用します。

Rails Worldページの専門化:

world/index.html のFront Matterで idevents から world に変更され、ページの識別子が明確化されました。コンテンツは大幅にフォーマットが改善され、HTMLの可読性が向上しています。スポンサーセクションのCTAボタンは維持されており、既存の機能に影響はありません。

設計判断

階層的なURL構造の採用:

/events という汎用的なエントリーポイントを新設し、Rails Worldは /world として独立させる構造が選ばれました。/events ページからのリンクが <a href="/world">More Details »</a> となっており、親子関係が明確になっています。この構造により、Rails World以外のイベント情報を追加する余地が生まれています。

BEMに似た命名規則の採用:

新しいスタイルシートでは、.events.heading.events.cards のように複合クラスを使用し、ページ内の異なるセクションを識別しています。この命名規則により、スタイルの適用範囲が明確になり、メンテナンス性が向上します。

まとめ

本PRは、イベント情報のエントリーポイントを /events に設定し、Rails Worldをその配下の専門ページとして位置づける構造改善です。ナビゲーションの変更、新規ページの追加、専用スタイルの定義という3つの変更が連動することで、コミュニティイベント情報の発見性と拡張性を両立させています。承認されたモックアップに基づく実装であり、デザインシステムとの整合性も確保されています。

記事メタデータ

Generated by:
Claude Sonnet 4.5 for DiffDaily

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

品質レビュー結果

Review Status:
リトライ後承認
Review Count:
2回 (改善を経て承認)
Reviewed by:
Gemini 2.5 Pro for DiffDaily

Review Criteria:

記事構成 ✓ PASS

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

リード文(総論)→背景・技術詳細(各論)→まとめ(結論)という「総論→各論→結論」の3部構成が記事全体に明確に適用されており、非常に分かりやすい構成です。

カスタムMarkdown構文 ✓ PASS

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

ファイル名付きシンタックスハイライト(```言語:ファイルパス)とPR番号のリンク記法([#629](URL))が正しく使用されています。

対象読者への適合性 ✓ PASS

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

内容はRailsのWebサイト構造変更に関するもので、専門知識を持つエンジニアを対象としており、過度な初心者向けの説明がなく適切です。

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

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

各セクションの構成が適切で、ほとんどの段落がトピックセンテンスで始まっています。1段落1トピックの原則が守られており、段落長も適切で可読性が高いです。

Diff内容との照合 ⚠ WARNING

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

ほとんどのコード引用はDiffと一致していますが、「_sass/modules/_events.scss」の引用で、Diffに存在する「.events p.others」や「.events.text」などのスタイル定義が省略されています。主要な変更点の理解を妨げるものではありませんが、完全ではありません。

技術用語の正確性 ✓ PASS

技術用語の正確な使用

「Front Matter」「BEM」「複合クラス」といった技術用語が文脈に応じて正確かつ適切に使用されています。

説明の技術的正確性 ✓ PASS

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

ナビゲーションの変更、ページの追加、専用スタイルの定義など、コード変更に対する技術的な説明はすべて正確で論理的です。

事実の突合 ✓ PASS

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

記事内の主張はすべてPRのDescription、Title、Diff内容で裏付けられており、ハルシネーション(捏造)は見られません。「承認されたモックアップに基づく」という背景もPR Descriptionと一致しています。

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

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

PR番号(#629)、追加行数(125行)、日付(Rails World 2026)など、記事に含まれる数値や固有名詞はすべて正確です。

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

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

記事タイトル「イベントページの構造改善とナビゲーション変更」は、PRの主題である「Event home page, moving world home page」の内容を的確に要約しています。

外部知識の正確性 ✓ PASS

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

記事に含まれる情報はすべてPR情報(Description, Diff)に基づいており、バージョンサポート状況やリリース日程など、PR外の知識の追加はありません。

時間表現の正確性 ✓ PASS

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

記事内に時間表現の歪曲は見られず、PR情報との時間的な矛盾はありません。