hirojinblog
記事一覧へ

個人ブログならAstroが楽でいいよね、という話

GCPの支払い忘れでブログのデータを失ったので、Astroで個人ブログを作り直しました。Markdownで記事を書けること、表示が速いこと、ファイルとして手元に残せることなど、実際に作ってみて感じたAstroの良さをまとめます。

web制作 AstroブログMarkdown静的サイト個人開発

ブログのデータが消えた

前に使っていたブログのデータが消えました。

理由は完全に自分のミスです。 GCPの支払いを忘れたまま、たぶん3か月くらい放置していました。

最初は「あとで払えば大丈夫だろう」くらいに思っていたのですが、気づいたときにはブログ環境ごと消えていました。記事、画像、設定、細かく触っていた部分。全部まとめてなくなると、さすがにちょっとへこみます。

支払い忘れでクラウド上のブログデータが消えてしまった様子

バックアップをちゃんと取っていなかった自分が悪いです。

ただ、この失敗でかなり思いました。

個人ブログは、もっと自分の手元で管理しやすい形にした方がいい。

そこで、このブログはAstroで作り直しました。

記事はMarkdownで書く。 Gitで管理する。 画像もリポジトリの中に置く。 静的サイトとして出力する。

この形なら、どこかのサーバーが止まっても、手元のファイルから戻せます。

実際に作ってみると、個人ブログならAstroはかなり楽でした。

Astroを選んだ理由

Astroを選んだ理由は、個人ブログにちょうどよかったからです。

自分が欲しかったのは、すごい管理画面でも、複雑な仕組みでもありません。

欲しかったのはこのあたりです。

  • 記事をファイルとして残せる
  • Gitで履歴を追える
  • Markdownで書ける
  • 表示が速い
  • 構成が分かりやすい
  • 必要になったら後から機能を足せる

ブログって、作り始める前はいろいろ欲しくなります。

検索機能も欲しい。 タグも欲しい。 人気記事も欲しい。 デザインも凝りたい。 管理画面もあったら便利そう。

でも、実際に一番大事なのは、記事を書くまでが面倒じゃないことだと思います。

ブログは、書くのが面倒になったら終わります。

その点、Astroはかなり軽いです。Markdownファイルを1つ追加して、本文を書いて、ビルドして公開する。個人ブログならこれくらいで十分です。

MarkdownとAstroで個人ブログを作り直すイメージ

Markdownで書けるのがいい

Astroでは、記事をMarkdownで管理できます。

---
title: "記事タイトル"
description: "記事の説明"
pubDate: 2026-06-28
categories: ["web制作"]
tags: ["Astro", "ブログ"]
---

本文を書いていきます。

これだけで記事になります。

Markdownは、文章を書くときの邪魔が少ないです。

見出しは ##、箇条書きは -、コードはバッククォート。 このくらい覚えておけば、とりあえず書けます。

ブログを書いていると、本文よりも装飾をいじりたくなることがあります。 見た目を少し直して、カードを少し変えて、余白を調整して、気づいたら記事が全然進んでいない。

自分はわりとそうなりがちです。

Markdownだと、できることがほどよく限られます。 だから文章に戻りやすいです。

表示が速い

Astroは、必要がなければブラウザに余計なJavaScriptをあまり送りません。

ブログの記事ページは、基本的に読むためのページです。 もちろん、検索やコメント、目次、コードコピーみたいな機能が欲しくなることはあります。

でも、記事を読むだけなら、大量のJavaScriptはいりません。

Astroは静的なHTMLとして出しやすいので、ブログと相性がいいです。

ページが速く開くと、それだけで読みやすくなります。 スマホでも開きやすいし、低速回線でも待たされにくい。

個人ブログは、すごい機能よりも「すぐ読める」ことの方が大事だと思います。

構成が追いやすい

Astroでブログを作ると、ファイルの役割が見えやすいです。

たとえば、このブログではだいたいこんな感じにできます。

src/
  content/
    blog/
      first-post.md
      astro-personal-blog.md
  layouts/
    BaseLayout.astro
  pages/
    index.astro
    archive.astro
    blog/
      [...slug].astro
public/
  images/
    blog/

記事は src/content/blog/ に置く。 共通レイアウトは src/layouts/ に置く。 画像は public/images/ に置く。

どこに何があるか分かりやすいです。

WordPressのテーマを触っていたときは、「この表示はどのテンプレートから来てるんだろう」と探すことがありました。Astroはファイル構成が素直なので、後から見ても追いやすいです。

Content Collectionsが便利

Astroでブログを作るなら、Content Collectionsはかなり便利です。

記事のfrontmatterにルールを作れます。

たとえば、次のような項目をそろえられます。

  • title
  • description
  • pubDate
  • categories
  • tags
  • featuredImage

ブログを続けていると、記事ごとに書き方がバラバラになりがちです。

ある記事では category、別の記事では categories。 日付も datepubDate が混ざる。 画像がある記事とない記事で扱いが変わる。

こうなると、あとから記事一覧やカテゴリページを作るときにつらくなります。

最初に形を決めておけるのは楽です。

最初に作るページは少なくていい

個人ブログを作るとき、最初から全部作ろうとするとしんどくなります。

最初はこのくらいで十分だと思います。

ページ役割
トップページ最近の記事とブログの雰囲気を見せる
記事詳細ページ本文を読みやすく表示する
記事一覧ページ過去記事を探せるようにする
カテゴリページ話題ごとに記事をまとめる
Aboutページこのブログについて書く

検索、RSS、人気記事、コメント、ダークモード、管理画面。 欲しくなる機能はたくさんあります。

でも、最初から全部はいりません。

記事が増えてから、「これは欲しいな」と思ったものを足していけばいいです。 先に機能を作り込みすぎると、肝心の記事が増えません。

これは自分への戒めでもあります。

記事テンプレートがあると楽

ブログを続けるなら、記事の型を決めておくと書きやすいです。

技術メモなら、たとえばこんな流れ。

## 何をしたかったか

## 詰まったところ

## 原因

## 解決方法

## 次に同じことで詰まらないためのメモ

レビュー記事なら、こんな感じ。

## 何を使ったか

## 良かったところ

## 微妙だったところ

## どんな人におすすめか

## まとめ

テンプレートがあると、「何を書こう」ではなく「この項目を埋めよう」になります。

個人ブログは、文章力よりも書き始めやすさの方が大事だと思います。

descriptionは毎回書く

記事には description を入れるようにしています。

記事一覧やOGP、検索結果の説明文で使いやすいからです。

本文の最初の文章をそのまま使うこともできますが、できれば記事ごとに書いた方がいいです。

たとえば、この記事ならこうです。

description: "GCPの支払い忘れでブログのデータを失ったので、Astroで個人ブログを作り直しました。Markdownで記事を書けること、表示が速いこと、ファイルとして手元に残せることなど、実際に作ってみて感じたAstroの良さをまとめます。"

きれいな要約というより、「この記事は何の話か」が分かれば十分だと思っています。

カテゴリは増やしすぎない

カテゴリは、最初から増やしすぎない方がよさそうです。

個人ブログなら、まずは3〜5個くらいで十分です。

  • web制作
  • アプリ
  • 学習メモ
  • レビュー
  • 日記

カテゴリを細かくしすぎると、1カテゴリに1記事しかない状態になりがちです。

タグは細かくてもいいですが、カテゴリはざっくりでいいと思います。

画像の置き場所を決めておく

画像は、記事ごとにフォルダを分けるようにしています。

public/images/blog/
  astro-personal-blog/
    thumbnail.png
    lost-cloud-blog.png
    rebuild-with-astro.png

こうしておくと、あとから探しやすいです。 記事を消すときも、関連画像を見つけやすくなります。

画像ファイル名は、日本語より英数字とハイフンにした方が安全です。

日本語でも動くことはありますが、URLとして扱うなら英数字の方が事故りにくいです。

公開前チェックは固定したい

記事を書くたびに、公開前チェックをその場で考えるのは面倒です。

なので、最低限見るところを決めておきます。

  • タイトルが長すぎないか
  • descriptionが空ではないか
  • 日付が正しいか
  • カテゴリが入っているか
  • 画像パスが切れていないか
  • スマホで読みにくくないか
  • ビルドが通るか

Astroなら、公開前に astro checkastro build を通しておくと安心です。

このブログではPodman Composeで環境を作っているので、次のように確認できます。

podman compose run --rm blog npm run build

ローカルに直接Node.jsを入れなくても確認できるので、環境を汚しにくいです。

WordPressではなくAstroにした理由

WordPressは便利です。

管理画面があるし、プラグインも多いし、テーマもたくさんあります。 複数人で記事を書くなら、WordPressの方が合う場面も多いと思います。

ただ、自分ひとりで書く個人ブログには、少し大きいと感じました。

プラグイン更新を気にする。 セキュリティも気にする。 表示速度も調整する。 テーマの構造も追う。 データベース込みでバックアップを考える。

今回一番痛かったのは、データベース込みのバックアップです。

ブログが消えたあと、「記事だけでもMarkdownで手元にあればな」とかなり思いました。

Astroなら、記事はMarkdownファイルとして残ります。 テーマも自分のコードとして追えます。 静的サイトとして出せば、サーバー側で管理するものも少なくなります。

「書く人」と「サイトを触る人」が同じなら、このくらいシンプルな方が合っている気がします。

Next.jsではなくAstroにした理由

Next.jsももちろん強いです。

ログイン、ダッシュボード、API連携、複雑なWebアプリを作るならNext.jsはかなり便利です。

ただ、個人ブログだけなら、Astroの方が考えることが少ないです。

ブログは、基本的には静的なページの集まりです。

動的な状態管理や、複雑なクライアント処理が必要ないなら、最初からアプリケーション寄りにしなくてもいいかなと思いました。

Astroは、必要になった部分だけReactやVueを混ぜられます。

最初は静的に軽く作る。 必要になったところだけ動かす。

この始めやすさが、個人ブログには合っていました。

URLはシンプルにしたい

記事URLは、なるべくシンプルにしています。

/blog/astro-personal-blog/
/archive/
/category/web制作/

日付をURLに入れるかは好みですが、自分は入れなくていいと思っています。

古い記事をあとから直すこともあるので、日付入りURLより扱いやすいです。

読みやすさを優先する

ブログで一番読まれるのは、トップページより記事ページです。

だから、記事ページは装飾より読みやすさを優先したいです。

  • 本文幅を広げすぎない
  • 行間を詰めすぎない
  • 見出しの前後に余白を取る
  • コードブロックは横スクロールできるようにする
  • スマホで画像がはみ出さないようにする

凝った見た目にしたくなることもありますが、まずは普通に読みやすい方が大事です。

続けるために気をつけたいこと

Astroでブログを作ると、サイト自体を触るのが楽しくなります。

ただ、ブログの主役は記事です。

ここは忘れないようにしたいです。

  • 1記事で完璧を目指さない
  • 短くても公開する
  • 後から直していいことにする
  • 記事ネタは先にメモしておく
  • デザイン改修ばかりしない

個人ブログは、あとから育てられるのがいいところです。

最初の記事が多少荒くても、未来の自分が直せます。 公開しないまま完璧を目指す方が、たぶんもったいないです。

まとめ

GCPの支払いを忘れてブログのデータを失ったのは、完全に自分のやらかしです。

でも、そのおかげで「個人ブログは手元に残る形で持っておいた方がいい」と強く思うようになりました。

その前提で考えると、Astroはかなりちょうどよかったです。

Markdownで書ける。 表示が速い。 構成が分かりやすい。 ファイルとして手元に残る。 必要になったら後から拡張できる。

WordPressほど大きくなく、Next.jsほどアプリ寄りに考えなくていい。

この軽さが、個人ブログには合っていると思います。

まず作るなら、トップページ、記事一覧、記事詳細、カテゴリページ、Aboutページくらいで十分です。

あとは記事を書きながら、必要になったものを少しずつ足していけばいいです。

ブログは、最初から完成形を作るものではなく、書きながら育てるものだと思います。

そして次は、支払い通知とバックアップだけはちゃんと見ます。