VimConf 2025 Small HP制作の振り返り

はじめに

VimConf 2025 Small お疲れ様でした!!!!

まだYoutubeのアーカイブを見れていないのですが、VimConf 2025 Small HP制作を担当しました、輪ごむです!

今回はそのHP制作を振り返ってみようと思います。

コードはこちら
https://github.com/vim-jp/vimconf.org

2024年に絞ったアクティビティはこのようになりました。

今回のHPは主に私とryoppippiさんの二人で制作しました。

2013〜2024 年までは Jekyll ベースでしたが、2025 年から Astro に移行しています。この技術移行に伴い、Astroでビルド・デプロイするためのGithub Actionsの基盤をゼロから作ってくれた ryoppippi さん、本当にありがとうございます!
これがなければこのHP制作は全く進みませんでした。

とはいえ、私の記憶はミノムシサイズで、やりとりの詳細はほぼ覚えていません。
そのため、私の主観をベースに、

良かった点

あまりコンポーネントを分けなかった

これは完全に主観ですが、「コンポーネント分割を細かくしすぎない」という判断が、自分にはすごく合っていました。

index.astrosrc/compoentsを見ていただければ分かりますが、セクション毎に分けたコンポーネントをindex.astroに配置しているのが殆どです。

https://github.com/vim-jp/vimconf.org/blob/6d6fb3a145437b82c3abaa213554dab264899935/2025/src/pages/%5Blang%5D/index.astro

https://github.com/vim-jp/vimconf.org/tree/6d6fb3a145437b82c3abaa213554dab264899935/2025/src/components

私は3回重複が出たらDRYの原則で分割したくなるタイプです。

ただ、HP制作においてコンポーネント分割は基本的に必要ないだろうと考えて汎用的な
コンポーネントはCard.astroしか作りませんでした。

結果として、devtoolsに表示されるHTMLとソースコードがほぼ1:1となり、個人的はとっても作業がしやすくなりました。

toml形式のContentLoaderを採用したこと

Astro 5.12(2025/7/17 リリース)の新機能をさっそく採用していました。

Astro 5.12 | Astro

まだ新しい機能ではあったものの、扱いやすく、登壇者毎にtomlファイルを分割できるのは良い点だったと思います。

失敗したこと

toml形式のContentLoaderを採用したことにより、i18n対応がやりにくかったこと

良かった点でも挙げたものの、i18n 対応に頭を悩ませました。結局のところi18n対応に着手できずにVim Confが終了してしまい、悔しい思いをしました。

構造的に翻訳テキストを扱うには相性が悪く、結果として「これだ!」という解決策は見つけられませんでした。 日本語と英語が入り混ったHPは流石に見にくいですよね…
来年以降の課題として残りそうです。

後半は全然コミットできなかったこと

これは完全に個人的な反省ですが、プロジェクトの後半に、プライベートと仕事がちょうど重なって忙しくなり、後半の i18n 対応や細かい調整が全くできませんでした。

改善点

しっかりとコンセプトを立ててデザインできていない

今回のデザインは、作業しながら考えるスタイルになってしまい、全体としてのコンセプト設計が弱めでした。しっかりと伝えたいメッセージやターゲットユーザーを言語化できるレベルまで落とし込むべきでしたね。。。
また、自分自身のデザイン経験値が少なく、自分にとって良いデザインとは何か?という軸がない状態でデザインしたのも良くない点でした。

アクセシビリティに考慮したコーディングができていない

アクセシビリティ関連の issue が立ったわけではありませんが、多くの人が見るサイトだからこそ最低限の配慮は入れたかった……という後悔があります。

時間と知識が足りず、思ったよりもアクセシビリティ改善に手を回せませんでした。

おわりに

振り返ってみると、ネガティブな内容(反省点)が多くなってしまいました…。ですが、全体としてはとても良い経験になりました。

またご縁があれば、さらにレベルアップした状態で挑戦したいです。

VimConf運営の皆様、参加者の皆様、そして協力してくださったryoppippiさん、ありがとうございました!