MANA-DOT

PIXEL ART, PROGRAMING, ETC.

Next13 の AppRouter で実行時の環境変数をクライアントで取り扱う

Next.js でアプリケーションを開発していると、クライアントで参照する設定値を環境変数で扱いたいケースは多々あると思います。Next.js では NEXT_PUBLIC_ という接頭辞の環境変数はビルド時に解決され、ビルド成果物に埋め込まれるためクライアントから参照できるようになります (参考: Configuring: Environment Variables | Next.js)。

ただし、この環境変数はビルド時に埋め込まれるため、当然ビルド時のものです。つまり、たとえばクライアントから参照する API の URL を環境変数で埋め込みたく、かつ API の URL はアプリケーションの環境(production, staging, development など)ごとに変わるというケースにおいて、環境ごとにビルドをする必要があるということになります。ビルド成果物をバージョンごとに世代管理したい場合、バージョン x 環境ごとに成果物が増えるため、管理も煩雑化します。

そこで、ビルド時ではなく実行時の環境変数をどうにかクライアントから参照できないかということを考えます。

三行で

  • Server Components は実行時の process.env にアクセスできる
  • Server Components から Client Components である Context Provider に環境変数を props として渡す
  • 他の Client Components は useContext 経由で実行時の環境変数にアクセスできるようになる
続きを読む

Skeb活動の方針

※ 2024年1月現在、作業速度 > リクエスト数となっているため、作業中はリクエストをクローズさせていただいています。溜まっている作業が解消するごとに再開していますので、ご了承ください。

skeb( https://skeb.jp/@manaten )を利用開始だけして放置していたので、方針を書いておきます。自身の再確認のための言語化という意味合いもあります。

参考

続きを読む

一番星はてのちゃんのドット絵を描きました

hateno_x2_3.gif

AIはてなブックマーカーの一番星はてのちゃんです。 かわいい。

firststar-hateno.hatenablog.com

普段あまりファンアート的なのは描かないんですが、はてのちゃんは謎の応援したい補正が高いと思うんです。なぜでしょうね? AIが頑張って機能追加しながら人間のブックマーカーに近づいていく感じが、成長を見守るのに近い感覚になるんでしょうかね?

これからも頑張って荒んだはてなブックマークに癒やしを与えてほしい。製作者さんも頑張ってほしい。

各モーション

謎に4モーション描きました。

待機

hateno_x2_1.gif

歩行

hateno_x2_2.gif

ブクマする

hateno_x2_3.gif

スターを送る

hateno_x2_4.gif

等倍

hateno.gif

関連リンク

プロンプトは頑張らず雑コラで始める stable diffusion でのAIイラスト生成

実は最近StableDiffusionで画像生成を楽しんでいます。

おそらく多くの人とは違い、自分はtxt2imgでプロンプトを頑張ることはせず、img2imgメインでイラスト生成をしています。覚書の意味も含めてイラスト生成の手順を紹介します。

今回は「商店街のど真ん中でダイソンのコードレス掃除機を自慢する緑髪の魔女の女の子」を生成します。

利用しているのは AUTOMATIC1111/stable-diffusion-webui 、モデルは Delcos/Hentai-Diffusion です。HentaiDiffusionは名前はいかがわしいですが、かわいいイラストを出しやすいです。

完成形

20230206.png

「商店街のど真ん中でダイソンのコードレス掃除機を自慢する緑髪の魔女の女の子」です。

続きを読む

デスク周り2022

desk04.jpg

筆者はテレワーク勤務になってそろそろ3年目となるのですが、3年もテレワークをしているとデスク周りにお金をかけるようになりますし、今年はブラックフライデーでFlexispotのデスクを購入したこともありデスク周りが一新されたので、現状のデスク周りのまとめ・総評的な記事を書いてみようと思います。

続きを読む

レガシーなjs環境におすすめなts-checkコメントについて

このエントリの内容

このエントリは、javascriptの型チェックをすることができるtypescriptの機能 @ts-check について紹介し、個人的に感じた便利なところや使い所を紹介していきます。

このエントリの読者は以下のような人を想定しています。

  • レガシーな環境でTypeScriptを導入しづらいが、複雑化するコードベースを少しでも楽に保守したい人
  • TypeScriptに興味があるが、昨今のjsのツールチェインについていけず、とりあえず試してみたい人
続きを読む