CONTRIBUTING.md

技術チャレンジ部 ホームページの編集ガイドです。

このドキュメントでは、開発・運用ルール、投稿方法、画像管理、ローカル環境構築の手順などをまとめています。


1. ディレクトリ構成

.
├── activities/        活動紹介ページ(自動運転・CTFなど)
├── posts/             記事(ニュース・お知らせなど)
├── images/            画像ファイルの集約場所(投稿・活動紹介用など)
│   ├── posts/
│   ├── activities/
│   └── common/
├── docs/              ビルド成果物(GitHub Pages 用)
├── _includes/         Eleventy テンプレート共通部品
├── styles/            CSSなどスタイル関連
├── .eleventy.js       Eleventy 設定ファイル
└── その他設定ファイル等

2. ローカル開発環境の構築

セットアップ

git clone https://github.com/ChallengeClub/challenge-club-homepage.git
cd challenge-club-homepage
npm install

開発サーバー起動

npx @11ty/eleventy --serve

3. リポジトリ運用ルール(Git の作業フロー)

基本ルール

デプロイ運用について(Deploy from a branch)


ブランチ命名ルール(例)

用途に応じて、以下のように接頭辞をつけてください。あくまでも一例なので、厳密に守らなくても大丈夫です。

作業内容 ブランチ名の例
機能追加 feature/add-activity-page
バグ修正 fix/incorrect-path
ドキュメント doc/update-contributing

作業手順の例

# メインブランチを最新化
git pull origin main

# ブランチを作成して移動
git checkout -b feature/add-activity-ctf

# 編集・追加・移動などの作業

# 変更の確認とステージング
git status
git add 
git commit -m "feat:CTF活動紹介ページと画像を追加"

# GitHub にプッシュ
git push origin feature/add-activity-ctf

mainブランチが更新されたら、変更分を都度マージしてください。

git checkout main
git pull origin main
git checkout feature/add-activity-cft
git merge main

プルリクエスト作成


ブランチの削除方法

作成したブランチは、作業完了後に不要であれば削除してください

git branch -d feature/add-activity-ctf

※ 強制的に削除する場合は -D オプションを使用(未マージの変更があるとき)

git push origin --delete feature/add-activity-ctf

もしくは、GitHub の PR 画面やブランチ一覧から手動で削除可能です。


4. 投稿方法(posts/ ディレクトリ)

投稿ファイルの作成

Frontmatter 記述例

---
title: "記事タイトル"
description: "記事の要約文。検索結果やSNSで表示されます。120〜160文字程度が目安。"
date: 2025-07-05
tags: [ニュース, CTF]
image: "/images/posts/sample/hero.png"    # 記事のヒーロー画像&OGP画像
ogImage: "/images/posts/sample/og.png"    # OGP用に別画像を使う場合のみ
ogAlt: "SNSなどで表示されるOGP画像の代替テキスト"
layout: base.njk
---

Frontmatter 項目の説明

タグ付けルール

推奨タグ一覧

画像の追加方法

![説明文](/images/[画像パス.png])
<figure>
  <img src="/images/activities/automotive_uxchallenge.png"
       alt="決勝大会の様子"
       title="2025/2/15(土)に開催された決勝大会でのプレゼンの様子"
       width="600">
  <figcaption>2025/2/15(土)に開催された決勝大会でのプレゼンの様子</figcaption>
</figure>

サンプル記事は posts/sample.md を参考にしてください。


4.1 LT記事の作り方メモ

connpass の LT 会レポート記事を作成するときは、まず以下の情報をそろえるとスムーズです。

作成の流れ

  1. 前回の LT 記事を参考に、posts/news-YYYY-MM-DD_connpassLT.md を作成します。
  2. connpass の URL、発表者名とタイトル、会議要約、前回記事、資料リンクを入力として、Codex などの生成AIにたたき台を作成してもらうと効率的です。
  3. titledescriptiondatepermalinktags などの Frontmatter を整えます。
  4. 発表ごとの紹介文を書きます。議事録をそのまま並べるのではなく、初見の人にも雰囲気が伝わり、次回参加や登壇に興味を持てる記事を意識します。
  5. 発表資料のリンクや、必要に応じて Speaker Deck などの埋め込みを追加します。
  6. 記事全体を自分で読み直し、発表者・参加者へのリスペクトが伝わる表現になっているか確認します。
  7. npx @11ty/eleventy --serve でローカル表示を確認し、レイアウト崩れや埋め込みミスがないかチェックします。
  8. 問題なければコミット、push、Pull Request を作成します。

注意点

生成AIに渡す入力例

生成AI にたたき台を作ってもらうときは、以下のような情報をまとめて渡すとスムーズです。

参考記事:
posts/news-2026-03-04_connpassLT.md

作成したい記事の日付:
2026-04-15

connpass URL:
https://challenge-club.connpass.com/event/388228/

発表者とタイトル:
- Lambigさん: テックリードとしてのプロダクト開発
- hidetakeさん: 量子計算をパズルとして解く
- 鬼Backs高田さん: つくろがやへの出展チャレンジ
- ばやしぃすさん: 3Dプリンターの限界を知るための心得

資料リンク:
- hidetakeさん: https://speakerdeck.com/hideakitakechi/2026-04-15-liang-zi-ji-suan-wopazurutositejie-ku
- hidetakeさん可視化ツール: https://quantumvisualizer.pages.dev/
- QCoder: https://www.qcoder.jp/ja
- つくろがや: https://tsukurogaya.nagoya/
- 3Dプリント一体造形の基本 Print-in-Place: https://booth.pm/ja/items/8173591

会議要約:
(Zoom AI要約や議事メモをここに貼る)

プロンプトのテンプレ(例)

以下のようなプロンプトをベースにすると、LT記事のたたき台を作りやすくなります。

posts/news-YYYY-MM-DD_connpassLT.md を作成してください。

参考記事:
[前回LT記事のパス]

イベント情報:
- 日付: [開催日]
- connpass URL: [イベントURL]

発表者とタイトル:
- [発表者名]: [発表タイトル]
- [発表者名]: [発表タイトル]

資料リンク:
- [発表者名]: [資料URL]

会議要約:
[要約本文]

要件:
- 参考記事のトーンと構成を踏襲する
- front matter も含めて作成する
- タイトル、description、permalink、tags を入れる
- 議事録の要約ではなく、発表者・参加者をリスペクトした記事にする
- 初見の人でも、次回参加や登壇に興味を持てる温度感にする
- 必要なら資料リンクや埋め込みも入れる
- 最後に次回参加を自然に促すまとめを入れる

5. 活動紹介ページの編集(activities/ ディレクトリ)


6. 画像ファイルの管理ルール

images/
├── posts/       # post投稿の画像
├── activities/  # 各活動報告に紐づく画像
└── common/      # ホームページ全体共通の画像

7. レビュー時のチェックポイント


8. SEO対策

OGP画像を設定するには


その他


お問い合わせ・Issue

疑問点や改善案があれば、GitHub の Issue にてご連絡ください。

ホームページ作成チャレンジに貢献いただきありがとうございます!