20240718

自由度の高さが心地よい Hugo

シンプルかつ拡張可能な設計が素晴らしい。プログラマ向けの静的サイトジェネレータといったところ。 Template と Method を少し触った程度だが自由度の高さが心地よい。 ブラウザからではなく生のファイルに対して grep をはじめ *NIX 環境のツールが使用可能な状態にしておくのは 検索、置換、といった編集上でも、バックアップといった運用上でも恩恵が大きい。

とりあえずランディングページにコンテンツを連続して表示するようにしてみた。 コンテンツごとの区切りがわかりやすいようにインラインで色づけしている。

layouts/_default/home.html

{{ define "main" }}
  {{ range where $.Site.RegularPages "Section" "posts" }}
    <h3 style="background: linear-gradient(to right, #33ccff, #66ccff, #ccccff, #ffccff);
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;">
      {{ .Title }}
    </h3>
    {{ .Content }}
    <p style="text-align: right">{{ .Date }}</p>
    <hr/>
  {{ end }}
{{ end }}

Multilingual mode の設定もしてみた。 選択可能なオプションとして Translation by file nameTranslation by content directory があるが後者を選択している。 どちらを選んでも設定した言語でパス依存の自動リンクが生成される。 せっかくなので 日本語 の時はダークモード、 英語 の時はライトモードにした。 このマルチリンガル設定は通訳者や翻訳者の学習プロセスにも使用できるのではないだろうか。 まだ未対応の有用な設定項目もあるのでいろいろ試したい。.IsTranslated は切り分けに使用できそう。

テーマは typo を使用している。シンプルかつ洗練されたデザインが良い。 Setup wiki の hugo.toml を使う場合、ローカルの Mac では問題なくビルドできていたのだけれど Cloudflare Pages ではエラーになってしまったので issue で報告しておいた。 https://github.com/tomfran/typo/issues/7

勢いを感じる Cloudflare

仕事で Google Cloud Storage の移行先として Cloudflare R2 を使用したことがきっかけで使い始めたが、なかなかよい。 特に AWS とは API レベルで互換性を保っているサービスもあり(S3)、SDK や CLI がそのまま使える。 自分の中では勝手に AWS の弟分のようなポジションの印象を持っている。 今年に入ってからPartyKit, Baselime, BastionZero と矢継ぎ早に買収を進めている。現在、最も勢いを感じる企業のひとつ。

静的ウェブサイトの構築には個人開発している Web サービス用に AWS Amplify も使用しているが、Cloudflare Pages とこれといった違いはない。 強いて言えば前者はパスワードによるアクセス制限が可能なことぐらい。 Route53 でドメインを取得しているのでカスタムドメインを使用するにあたって同じクラウドサービスを使うほうがスムーズというだけ。 そのうち Cloudflare でドメインを取る日も近いかもしれない。

2024-07-18 01:26:02 +0900 +0900


Next

anime 3
api 1
aws 3
cloudflrare 1
cognito 1
development 1
development process 1
development standard 1
game 1
howto 2
hugo 1
idea 2
impressed 1
leaning toothpick syndrome 1
life 6
log 2
maxim 2
mdx 1
postgresql 2
rails 7
rubocop 1
ruby 1
rust 1
solution 2
stripe 1
tech 17
ui 1
warp 1