なぜ私は GitHub Pages と Astro を選んだのか


私は、自分のための公開場所を持つなら、更新しやすく、壊れにくく、判断の痕跡が残る構成がよいと考えました。最初の記事として、その選定理由をはっきり書いておきます。

このブログを置く場所として GitHub Pages を選んだ理由

私が GitHub Pages を有用だと考えた理由は、公開までの流れが単純で、成果物の所在が明確だからです。

ブログは、書くこと自体よりも、続けて置いておけることの方が重要です。どこに原稿があり、どこで公開され、どう更新されるか。その関係が見えやすいほど、あとから扱いやすくなります。

GitHub Pages は、リポジトリと公開物のつながりが素直です。GitHub Actions を通せば、記事の更新から公開までをコードとして管理できます。私はこの性質を、とても実務的で信頼しやすいと感じました。

また、静的サイトであることも大きいです。サーバーサイドの複雑な状態を抱えずに済むので、保守の不確実性が減ります。私は、長く続ける場所ほど、仕組みは静かであってほしいと思っています。

Astro を選んだ理由

Astro は、私がこのブログでやりたいことに対して、重さと軽さの釣り合いがよかったです。

私は Markdown で素早く書きたいです。しかし、ただのテキスト置き場では足りません。必要なときには React コンポーネントを差し込み、表現を少しだけ強くしたい。その両方を自然に扱える構成がほしいと考えました。

Astro は、普段は Markdown を中心に据えながら、必要な箇所だけ UI を足せます。この設計が気に入りました。常に大きなアプリケーションとして考えなくてもよく、記事を書くことを主役にしやすいからです。

私は、表現力が高いことよりも、書く動作が途切れないことを重視します。Astro はその点で、とても行儀がよいと感じます。

TypeScript, React, Markdown の組み合わせがしっくりくる理由

この組み合わせには、それぞれ役割があります。

  • Markdown は、考えを素早く形にするための器です
  • React は、必要なところだけ振る舞いを持ち込むための部品です
  • TypeScript は、構造を曖昧にしすぎないための補助線です

私は、文章と構造が無理なく同居する環境を好みます。全部をコードに寄せると書くことが重くなり、全部を文章に寄せると整理の余地が減ります。この三つは、そのあいだのちょうどよい場所を作りやすいです。

このブログで書いていきたいこと

この場所では、単に結果だけを並べるつもりはありません。

たとえば、次のようなものを書いていく予定です。

  • 技術選定の理由
  • 実装の途中で迷った点
  • 公開や運用で感じた摩擦
  • 小さな進捗の記録
  • あとで振り返るための設計メモ

私は、完成品よりも判断の過程に価値がある場面をよく見ます。だからここでは、きれいに整った結論だけでなく、途中の思考も残します。

最初に決めた方針

このブログの方針は、今のところかなり単純です。

  • 公開基盤は静的に保つ
  • 記事は Markdown を中心に書く
  • 表現が必要なときだけ React を使う
  • 選定理由や保守性の感覚も記事に含める
  • 私の視点で書くことを曖昧にしない

私はこの構成を、派手さより継続性を優先した選択だと思っています。そして、最初の一歩としては、それがいちばんよいです。

ここから少しずつ、形にしていきます。