Utils·稼働中·2026-02: 進行中
Badge
動的PNGバッジ生成サービス
URL クエリだけでテキスト・色・アイコン・Tailwind クラスを受け取り、PNG バッジを即時生成します。
技術スタック
制作の動機
shields.io の存在は知っていましたが、いつサービス終了するかわからない外部サービスに依存したくありませんでした。
過去に Next.js の @vercel/og が Satori を使っていたことを思い出し、「自分も Satori で作ってみよう」と動機づけられました。
コメント
最小のコードで最も頻繁に使われるツールです。 README 1 行のバッジが毎日表示される状況で、外部サービスに依存せず自身でコントロールしています。
主な特徴
- 01Satori (JSX → SVG) + @resvg/resvg-wasm (SVG → PNG) パイプラインを Hono 上に自前で組立
- 02Vercel 関数で wasm ファイルパスを直接掴んで初期化する環境分岐処理
- 03URL クエリだけで全てカスタマイズ: Tailwind クラスを URL にそのまま渡せる (tw-to-css)
- 04内蔵アイコンスラッグ + 任意の favicon を読込 (icojs で .ico 動的デコード)
- 05韓国語フォント (Noto Sans KR) 内蔵で韓国語バッジ生成可
備考
- ·単発開発 (1日): 必要な機能だけを作ると決めて実装 (YAGNI)
- ·将来的に b-hub 統合時、ユーザー別バッジリスト・お気に入り・履歴を追加予定

