- Hugo:サイトに必要なページを生成します。
- Node.js:コードの整形(Stylelint と Prettier の実行)に必要です。
- GitHub Actons:本番環境(GitHub Pages)への更新作業を自動化します。
- GitHub Pages:サイトのホスティングに使用しています。
- Renovate:依存関係のアップデートを自動化します。
Warning
これは Hugo,Node.js,Git がインストール済みである場合の手順です。それぞれのインストール手順については,公式ドキュメント等を参照してください。
- このリポジトリを clone します。
- Clone したリポジトリのルートディレクトリで
pnpm iを実行します。
- 文章:
content/以下の Markdown ファイル(.md)を編集してください。 - 画像:
assets/img/以下の当該ファイルを編集してください。 - メニュー,カレンダー,動画の URL 等:
config/hugo.ymlのmenuを編集してください。[!WARNING] URL を修正する場合は,主要なエディターに搭載されている「ファイルを横断して一括置換する機能」の利用を推奨します。
また,編集時に役立つデバッグコマンドを用意してあります(cf. package.json)。
pnpm run format:コードを整形します(format.shの実行)。pnpm run preview:サイトの動作をプレビューできます。pnpm run dev:開発環境としてサイトをビルドします(hugo -e developmentと同じ)。pnpm run build:サイトをビルドします。
GitHub Actions を利用し,master ブランチが push された場合,自動的に master ブランチのコードを基にサイトを生成し,gh-pages ブランチの内容をサイトとして公開する仕組みとなっています(cf. .github/workflows/publish.yml)。
Stylelint や Prettier といった npm パッケージから GitHub Actions で使用している各種アクションといった依存関係のアップデートを自動化するために Renovate を使っています。
このサイトは年に数回しか更新しないと想定されるので,依存関係のアップデートを自動で確認する頻度を「年に 1 回だけ」と設定してあります(cf. renovate.json)。
Hugo の使い方は,次のサイトが分かりやすいです。
- Hugo の公式ドキュメント(英語)
- まくまく Hugo ノート(日本語)