OpenReplay ブログ
PostgreSQLでベクトル検索を実装する方法
pgvectorでPostgresにベクトル検索を実装。埋め込みを保存し、コサイン距離で検索し、HNSWやIVFFlatで索引化し、全文検索と組み合わせます。
Omarchy Linux に財団と数百万ドル規模の拠出表明
Omarchy Linuxの資金調達を解説。Omacom Foundation、1850万ドルの支援、Hyprlandのスポンサー契約、Quickshell採用、寄付者の変更まで。
犯人は誰だ? git blame で真犯人を突き止める
git blameの使い方を解説。出力の読み方、-L・-w・-M・-Cでの絞り込み、大量変更の回避、行の本当の変更元の追跡を紹介。
JavaScript で Object.groupBy を使って配列をグループ化する
JavaScriptのObject.groupByで配列をキー別に分類し、reduceやMap.groupByと比較しながら、文字列化とnullプロトタイプ結果を解説します。
Meteor.js は2026年でもまだ通用するのか?
2026年のMeteor.js:今も重要な理由、3.0〜3.5の変更点、リアルタイムアプリや2.x移行で使うべき場面を解説。
Grok Bot を知る: エージェント問題に対する xAI の回答
xAIのベータ版AIエージェントGrok Botは、1アカウントで1台のクラウドマシンを共有します。プラン、権限、認証とリスクを解説。
shadcn/ui が Radix から Base UI に切り替えた
shadcn/uiは新規プロジェクトをRadixからBase UIへ変更。何が変わったか、移行不要な場合、移行コストの実態を解説します。
WordPressのホワイトスクリーン・オブ・デス(真っ白な画面)を修復する
WordPressの白画面をdebug.logで特定し、メモリ確認、プラグインとテーマのフォルダ名変更、DBでの無効化まで解説します。
サーバーサイドでの画像アップロード処理
Nodeの画像アップロード安全対策: メモリ上でファイル署名を検証し、サイズ制限を設定し、sharpで再エンコードして安全に配信します。
アニメーションGIFをMP4動画に置き換える方法
アニメGIFをMP4またはWebM動画に置き換える方法を解説。autoplay muted loop playsinlineの書き方、ffmpeg変換、LCP対策も紹介。
OpenCode vs Claude Code: どちらを使うべきか
OpenCode vs Claude Code: 価格、モデル対応、拡張性、そして自分のコーディング作業に合うツールを比較できます。
Node サーバーをグレースフルにシャットダウンする
SIGTERM対応のNodeグレースフルシャットダウン: readinessを切り替え、server.closeでリクエストを終了し、順番にリソースを閉じて502を防ぐ。
git history で古いコミットを修正する
Git 2.55のgit historyは、fixup、reword、splitで古いコミットを書き換え、積み重なったブランチを更新し、dry-runで安全に確認できます。
OpenTUI は Ink の本当の代替になるか?
OpenTUIとInkを比較し、ターミナルUIの性能、実行環境の制約、内蔵コンポーネント、移行コストを解説します。
Web Locks API でトークンリフレッシュの競合を解消する
Web Locks APIとnavigator.locks.request、トークン再確認で、タブ間のトークン更新競合を防ぎます。
OPFS を使ってブラウザで SQLite を動かす
OPFSでブラウザ内SQLiteを使う手順: Worker設定、opfsかopfs-sahpoolの選択、静かなメモリ退避を防ぐ方法を解説。
JavaScriptなしでWeb Componentsを制御する
カスタムのinvoker commandsで、HTMLだけでWebコンポーネントを制御する方法を解説。commandとcommandforでボタンをJavaScriptなしで接続します。
SPA デプロイ後に発生する Cannot GET エラーの解決方法
デプロイ後のCannot GETとSPAの404エラーを、Nginx、Apache、Netlify、Vercel、S3 CloudFrontのサーバー書き換えで修正します。
見出しが不適切な位置で改行されるのを防ぐ
見出しの改行崩れや長いURLを、適切なCSSとHTMLで修正: nbsp, wbr, overflow-wrap:anywhere, word-break:break-all, hyphens:auto, text-wrap。
Jest をやめて Node 組み込みのテストランナーへ
Node test runnerとJestを比較。安定機能、watch mode、snapshot、fake timers、coverage、TypeScript対応、移行時の制約を解説。
ステートマシンでクイズアプリを作る
ReactでXState v5を使いクイズアプリを構築。4画面を状態機械でモデル化し、booleanフラグを置き換え、結果状態を制御します。
冪等性の解説とAPIにとっての意味
冪等性キーを解説。APIの重複リクエストと競合を防ぎ、POSTを原子的な確保とトランザクションで安全に再試行する方法。
サーバーレンダリングアプリで発生する 'window is not defined' の修正
サーバー描画アプリのwindow is not definedを、on-mountフック、typeof windowチェック、依存関係のclient-only importで修正します。
Web開発者のためのプロンプトインジェクション解説
Web開発者向けのPrompt Injection解説。プロンプト層で直せない理由と、間接攻撃、信頼できない出力、ツールのリスクをどう抑えるかを整理します。