8
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめてのアドベントカレンダーAdvent Calendar 2024

Day 5

Astro を利用して個人ブログを作成する方法

Last updated at Posted at 2024-12-04

この記事は、はじめてのアドベントカレンダー 5 日目の記事です

初めてアドベントカレンダーに参加したので少し緊張していますが、自分が描ける範囲で記事を書いていきたいと思います

はじめに

数日前に Astro を利用して個人ブログを作成したのですがその際の体験がとても良かったので、Astro を利用して個人ブログを作成する方法を紹介します

Astro とは

Astro は、静的サイトジェネレーターの一つで、コンテンツを高速かつ効率的に配信するために設計されています
Astro は、JavaScript フレームワークやライブラリ(React、Vue、Svelte など)と統合できる柔軟性を持ち、開発者が好みのツールを使用してコンポーネントを作成できます

特徴

  • パフォーマンス: Astro は、必要な部分だけをクライアントに配信するため、ページの読み込み速度が非常に速いです
  • 柔軟性: React、Vue、Svelte など、さまざまなフレームワークと統合することができます
  • 拡張性: プラグインやテーマを利用して、機能を簡単に拡張できます

Astro をセットアップする

Astro を利用して個人ブログを作成するためには、まず Astro をセットアップする必要があります
次のコマンドを実行して、Astro プロジェクトを作成します

npm create astro@latest -- --template blog

質問に従ってプロジェクトを作成し、次のコマンドを実行して開発サーバーを起動します

npm run dev

ブラウザで http://localhost:4321 にアクセスすると、Astro のデフォルトのブログテンプレートが表示されます

image.png

ブログ記事を追加する

Astro のデフォルトのブログテンプレートには、src/content/blog ディレクトリが含まれており、このディレクトリにブログ記事を追加することができます

src/content/blog ディレクトリに、新しい Markdown ファイル(例: hello.md)を作成し、記事の内容を記述します

---
title: 'Hello Astro!'
description: "This is the first Astro article I've created!"
pubDate: 'Dec 05 2024'
heroImage: '/blog-placeholder-5.jpg'
---

Hello, Astro! This is the first Astro article I've created!

このように、titledescriptionpubDateheroImage などのフロントマターを設定し、記事の内容を記述します

ブラウザで http://localhost:4321/blog/hello にアクセスすると、新しいブログ記事が表示されます

image.png

ソーシャルメディアの埋め込み

Astro では、ソーシャルメディアの埋め込みも簡単に行うことができます
コマンドを利用して次のパッケージをインストールします

npm i astro-embed

先ほど作成した hello.md の名前を hello.mdx に変更し、次のようにソーシャルメディアの埋め込みを追加します

---
title: 'Hello Astro!'
description: "This is the first Astro article I've created!"
pubDate: 'Dec 05 2024'
heroImage: '/blog-placeholder-5.jpg'
---

<!-- Omit code as it will be off the screen. -->

import { BlueskyPost } from 'astro-embed';

<BlueskyPost id='https://bsky.app/profile/mk.gg/post/3la4wqeyztm2u' />

このように、astro-embed パッケージをインポートし、<BlueskyPost id='' /> のように埋め込みたいソーシャルメディアのコンポーネントを追加します

ブラウザで http://localhost:4321/blog/hello にアクセスすると、ソーシャルメディアの埋め込みが表示されます

image.png

まとめ

Astro を利用して個人ブログを作成する方法を紹介しました
Astro は、パフォーマンスが高く、柔軟性があり、拡張性があるため、個人ブログを作成するのに最適なツールです
ぜひ、Astro を利用して個人ブログを作成してみてください!

8
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?