Web Dev Digest: 2026‑05‑17
Top 20
LogTape 2.1.0: Throttling, logfmt, and smarter redaction
Source: Hacker News | Published: 2026-05-17 21:57 JST
- Deno/Node.js/Bun/ブラウザを横断する JS/TS ログライブラリ LogTape 2.1.0 がリリースされ、本番で同一パターンのログが暴発した際に閾値を超えた分を抑制する Throttling フィルターが追加された。
level=info msg="..." user_id=123形式の logfmt フォーマッタを正式採用し、テキスト可読性とパーサビリティを両立させた中間表現として利用可能になった。- テキスト系フォーマッタに IANA タイムゾーン指定(
Asia/Seoul、+09:00形式)が入り、グローバル運用時のログタイムスタンプ表示を制御できるようになった。 - 機密情報リダクションが非同期処理対応+HMAC による pseudonymization に強化され、ログ相関性を保ったまま PII を保護できる。
- 既存 Bunyan ベースアプリ向けに、Bunyan のログレコードを LogTape に流し込む新アダプタパッケージが同時公開された。
NestJSが好きだけどきつかったから2週間でWebフレームワーク作った
Source: Zenn | Published: 2026-05-17 17:30 JST
- NestJS の Experimental Decorator 依存・不完全な ESM 対応・約30秒の起動時間・サーバーレス非対応といった具体的不満点を起点に、著者が2週間で Zelts という TypeScript Web フレームワークを作った設計記録。
- Node.js / Bun / Cloudflare Workers / AWS Lambda の4ランタイムで同じコードが動くことを目標にし、デフォルト引数スタイル(
id = pathParam('id'))でルートパラメータを受け取る API を採用。 - DI 基盤の Config 設計と Testcontainers のネイティブサポートを最初から組み込み、Controller / Service / Validation / Auth / Middleware / OpenAPI 生成 / CLI まで v0.x で揃えている。
- 設計段階で Claude Code を使って複数 POC を高速に検証し、2週間という短期間で動く v0.x を仕上げたフロー自体が事例として価値がある。
- NestJS の設計思想を保ちながらモダン TypeScript(ネイティブ Decorator・ESM)と Edge ランタイム対応を両立させる、という具体的な差別化方針が示されている。
「有向グラフ型ワークフロー」はもう限界。プロンプトのゴミを撲滅し…
Source: Zenn | Published: 2026-05-17 17:58 JST
- AI エージェント設計でデファクトになりつつある「有向グラフ型ワークフロー」を、前ノードの出力を正しいと前提にせざるを得ない・検証ノード追加で複雑性が指数関数的に爆発する・AI の自律性が失われる、の3点で限界と断じた設計論。
- 解決策として「解釈/計画→実行→評価」の認知プロセスをエージェント内部にカプセル化し、外側のフロー制御ではなく内部の自律ループで動かす State 駆動アーキテクチャを提案。
- プロンプト最適化の具体策として「生のツール実行ログを次ステップに積み上げない」「評価基準はプロンプトではなくツール定義側に書く」を挙げ、コンテキスト汚染を構造的に防ぐ。
- 個々のエージェントと統合システムが同じ認知プロセスを再帰的に持つフラクタルスケーリング構造により、規模拡大時にインターフェース複雑性が増えない設計を実現。
- TypeScript 実装の synapse-agent/framework として GitHub で完全無料のオープンベータ公開済み、依存性注入対応の LLM 選択と構造化 JSON 通信を備える。
1つのenv varで3つのマッチングアプリを量産した話 — Next.js × Supabase の現実的なマルチテナント
Source: Zenn | Published: 2026-05-17 18:05 JST
NEXT_PUBLIC_GENREという1つの環境変数で格闘技 SparMate・お笑い NetaPair・ボードゲーム BoardLink の3アプリを同一コードから分岐させ、ジャンル別設定をgenre.tsに集約する Next.js × Supabase 構成の実例。- Vercel 上に4プロジェクト(本番3 + ステージング1)を並列で運用、Supabase は単一プロジェクト内でスキーマ分離と RLS により完全データ遮断を行う方針でインフラコストを最小化。
- 初アプリ SparMate には2週間を要したが、テンプレ化後は NetaPair と BoardLink を合わせて3日で立ち上げた実績を公開し、テンプレ化の効果を定量的に示している。
- 検索+DM の2機能でマッチングアプリの9割は機能するという本質を抽出した上で、距離の重要性・年齢フィルターの要否・デフォルト言語などジャンル固有の差分のみを設定で吸収。
- 自分が当事者のジャンルを最初に作って後でテンプレ化する、いわゆる scratch-your-own-itch を先に通すことが結果的に最速だったという経験則を結論として提示。
Google スプレッドシートを MCP で Claude に直接読み書きさせる【TypeScript 実装・実用コード全公開】
Source: Qiita | Published: 2026-05-17 23:59 JST
- TypeScript と
@modelcontextprotocol/sdk+googleapisで Google Sheets MCP サーバーを実装、読み取り・書き込み・行追加・新規作成の4ツールを Claude Desktop から直接呼べる完成形コードを公開。 - OAuth2 で初回認可したトークンを
~/.google-sheets-mcp-token.jsonにローカルキャッシュし、以降は自動認証で済む構成にしている。 tsxでそのまま実行できるシングルファイル設計で、Claude Desktop 設定への登録手順までセットで提示。- 実用例として freee やマネーフォワードの CSV エクスポートを自動で Sheets に転記し、「この月の経費をまとめて」のような自然言語指示でカテゴリ別集計や在庫更新まで実行できる。
- セキュリティ面では MCP サーバーがローカル実行のためトークンが端末内に留まり、Claude に渡されるのは処理後データのみという責務分離を強調。
Next.js + Cloudflare WorkersでブラウザカードゲームをClaudeと個人開発する話
Source: Zenn | Published: 2026-05-17 15:11 JST
- 2人用の不完全情報ゲーム(大富豪系)を Next.js + TypeScript + Zustand のフロントと Cloudflare Workers + Durable Objects のバックで作る個人開発設計記。
- AWS でなく Cloudflare を選んだ理由として、コールドスタートなし・無料枠が1日10万リクエスト・Durable Objects によるステートフルな対戦ルーム管理が成立する点を具体的に挙げる。
- ゲームロジックを GameState 入出力の純粋関数として切り出すことで、UI/サーバー/Vitest テストの3面で同じコードを動かす設計を採用。
- AI 戦略はフェーズ1がルールベース(easy/normal/hard)、フェーズ2が MCTS(モンテカルロ木探索)と段階的に進化させる計画で、不完全情報ゲームの AI 実装ノウハウを段階的に学ぶ構成。
- 続編として「技術スタック選定の理由」「Claude Code 実践録」「不完全情報ゲーム AI 実装」の3シリーズを Zenn で順次公開予定と予告している。
図表の位置を保ったまま英語論文PDFを日本語化するWebサービスを作った
Source: Zenn | Published: 2026-05-17 18:32 JST
- フロント Next.js 16(Vercel)+ バックエンド FastAPI(Google Cloud Run)+ LLM Gemini 2.5 Flash/Pro + Stripe 手動キャプチャ、というスタックで英語論文 PDF を「図表・段組み・数式の位置を崩さず」日本語化する Web サービスを公開した記録。
- 価格モデルは「ページ単価¥10/最低¥80」の従量課金で、翻訳失敗時は課金されないという既存サブスク型サービスとの差別化を意識した設計。
- レイアウト保持は PyMuPDF でテキストブロックを抽出した上で 40 ブロック/12,000 文字単位にバッチング、ThreadPoolExecutor で4並列実行する構成。
- 日本語訳がブロックからはみ出す場合は無理に詰め込まず原文を維持する仕様で、レイアウト破壊を防ぐ判断基準を明示している。
- 4並列バッチ化により1論文あたりの翻訳所要時間を約800秒から約270秒に短縮した実測値を提示している。
pnpm monorepo でバックエンドと UI の enum drift を防ぐ
Source: Qiita | Published: 2026-05-17 20:14 JST
- バックエンドと UI が別々に
AuditOperation型を定義していると、バックエンドに値が追加されても UI 側で型エラーにならず実行時の表示バグになる、という enum drift 問題を整理。 - 解消策として
packages/shared-typesパッケージに enum を集約し、両方からこの単一ソースを import する pnpm monorepo 構成を提示。 - UI 側マッピングに
as const satisfies Record<AuditOperation, TranslationKey>を当てることで、enum に値が追加された瞬間にマッピング漏れがビルド時に型エラー化する設計を解説。 - 共有 types を参照する具体的手段として「先行 build」「TypeScript Project References」「
pathsalias で src を直接参照」の3パターンを比較紹介。 - 結論として、バックエンドが値を追加するだけで UI の表示マッピング漏れがビルド段階で検出される運用フローを構築できると主張。
GitHub Actions で Jest が不定期に OOM で動かなくなった原因と対応
Source: Qiita | Published: 2026-05-17 23:57 JST
- GitHub Actions の標準ランナー(8GB RAM)で Jest テストが不定期に OOM クラッシュ、根因は GC 前後で空き容量が動かない=生存オブジェクトでヒープが埋まる状況だったと特定。
- Node.js v22 のデフォルトヒープが約 4,144MB に対し、過去バージョン向けに
--max-old-space-size=4096を設定したままだったため、実質「デフォルトより 48MB 低い」状態だった点を具体的な数値で説明。 - テスト対象が 23,000 行・約 1.6MB の巨大 HTML で、毎テストケースで DOM 構築/破棄を繰り返すためメモリ消費が累積していた負荷状況も明示。
- ワーカーが OOM クラッシュした後も他プロセスがメモリ不足で GC 頻発、Jest 本体が完了待機し続けて長時間ハングするように見える、という挙動メカニズムを解説。
- 解決として
--max-old-space-size=5120に引き上げ、ランナーの 8GB に対して約 63% を Node に割り当てて余裕を確保した、と具体的な落としどころを提示。
既存のS3クライアントを2行変えるだけで、Cloudflare R2に移行する方法
Source: Qiita | Published: 2026-05-17 22:36 JST
- AWS S3 SDK のクライアントを「エンドポイント URL とクレデンシャルの2行を変えるだけ」で Cloudflare R2 に乗せ替えられる、という移行ガイドを実例コードで提示。
- R2 の S3 互換エンドポイントは
https://{ACCOUNT_ID}.r2.cloudflarestorage.com形式で、regionには必ずautoを指定する必要があるという地味だが詰まりやすいポイントを明記。 - 月 10TB のエグレスを含む 1TB ストレージ例で AWS S3 約 $923 に対し Cloudflare R2 が約 $15〜20 と比較、egress 無料が大きく効くため転送量が多いほど優位という具体的数字を提示。
- 一括コピー不要で「リクエストされたファイルから自動的に R2 へ蓄積していく」Sippy ツールを使った段階移行パターンも紹介し、移行リスクを下げる選択肢を提供。
- region に具体的リージョン名を入れると Signature V4 が壊れる、CORS は別途設定が必要、公開 URL はカスタムドメインを推奨、の3つの落とし穴を実装前にチェックリスト化。
Stripe Webhook が 301 で 1 週間全失敗した話 — naked ドメインと Vercel リダイレクトの罠
Source: Qiita | Published: 2026-05-17 13:56 JST
- 2026/4/24〜30 の 7 日間で Stripe Webhook イベント 14 件が全滅、根本原因は Vercel が naked ドメイン(
masatoman.net)への全リクエストをwww.masatoman.netに 301 する仕様だったと特定。 - Stripe は POST に対する 3xx をセキュリティ上追従しないため、Vercel の 301 でリクエストボディが消失し www 側にも届かないという挙動を時系列で再現説明。
- 修正は Stripe Dashboard 上の Webhook URL を
https://masatoman.net/...からhttps://www.masatoman.net/...に書き換え、テスト送信で即時復旧した実体験を提示。 - 再発防止策として「curl で Webhook URL の挙動を事前検証」「
processed_webhook_eventsテーブルで冪等性確保」「GitHub Actions で定期 smoke test」の3つを明記。 - Stripe / Vercel という超メジャー構成でも naked vs www のリダイレクト方針1点で 1 週間級のサイレント障害になり得る、という運用教訓を具体ケースとして残している。
All Articles
Zenn
| # | Title | Summary | Author | Published |
|---|---|---|---|---|
| 1 | Type Challengesを1日1問解く #4 | MyOmit / Merge / Diff / StringToUnion / TupleToUnion の問16〜20を Exclude × Mapped Types や T[number] 等で解く回 | @鶏冠 | 20:15 |
| 2 | Chrome拡張スターターキット(Claude Code連携版) | Manifest V3 拡張に Claude Code 連携を組み込んだ動く骨格スターター本 | @CromeProject | 19:29 |
| 3 | VRCardMaker β0.3.0で、使い続けるための移行・共有まわりを整えた | VRCardMaker β0.3.0 で旧データからの移行と共有導線を整え、継続利用を阻む摩擦を潰した更新ログ | @ロク | 18:20 |
| 4 | React × TypeScript × Redux Toolkitで人材管理SaaS風アプリを作る3 | Redux Toolkit のスライス/セレクタでモック従業員データを管理するデータ層実装回 | @はうつりー | 18:01 |
| 5 | Mastra YouTube解説:Chroma共同創業者が語るコンテキストエンジニアリング | Chroma 共同創業者の “RAG is dead” 解説、失敗の本質は context failures と断じ grep + BM25 + ベクトル + 検索専用サブエージェントを現実解として提示 | @jun shiromizu | 13:41 |
| 6 | スマホ使用時間を年間換算して「その時間で何ができたか」を見せるツール | 日次のスマホ利用時間を年間時間に換算し TOEIC 学習量等と並べて可視化する Web ツール | @はまでばっぐ | 22:38 |
| 7 | semantic-releaseとは? GitHub Actionsでnpm公開を自動化する仕組みと最小構成 | fix→patch / feat→minor / BREAKING CHANGE→major を判定する semantic-release を GitHub Actions で動かす最小構成 (release.config.cjs + workflow) | @53able | 20:18 |
| 8 | プログラム1行も書かずに、Claude AIとポケモン対戦DBを1ヶ月で公開した話 | Claude Code 経由でフレームワーク非依存の HTML/JS のみのポケモン対戦 DB を1ヶ月で公開した記録 | @PchamDBぴ〜ちゃん | 16:02 |
| 9 | サーバー代0円・バックエンド不要!?remoteStorageで実現する「ユーザー主権」なWebアプリ | remoteStorage プロトコルでバックエンドを持たず、ユーザー所有ストレージに永続化する Web アプリ実装パターン | @konnyaku256 | 14:33 |
| 10 | 【2026年版】React + ViteとNext.js、どちらを選ぶべきか? | SPA 用途は Vite、SEO/SSR を要するなら Next.js、学習導線では React+Vite から、という用途別選定指針を整理 | @三好アキ | 09:26 |
| 11 | 図表の位置を保ったまま英語論文PDFを日本語化するWebサービスを作った | (Top 20 参照) | @yamataiki | 18:32 |
| 12 | 1つのenv varで3つのマッチングアプリを量産した話 | (Top 20 参照) | @こそあど | 18:05 |
| 13 | Next.js + Cloudflare WorkersでブラウザカードゲームをClaudeと個人開発する話 | (Top 20 参照) | @Akinobu Lab | 15:11 |
| 14 | MDXコンポーネントに構造化データを埋め込んでSEOリッチスニペットを自動獲得する | next-mdx-remote v5 で MDX に props を渡すだけで HowTo/Recipe/FAQPage/Review 4 スキーマの JSON-LD を 150 本以上の既存記事に一括付与した実例 | @ヨコタナオヤ|correlate design | 10:51 |
| 15 | スマホを持たない高齢者に、防災情報をテレビで届ける | Android TV / Fire TV Stick を Next.js 16 + Lambda で防災端末化、月 0.5 ドル運用で警戒レベル 3 以上は強制画面遷移する SafeTV を構築 | @Koji Okuji | 21:32 |
| 16 | BOM・CSV Injection・認可バイパス、20年目のフロントエンジニアが踏み抜いた罠の全記録 | CSV の BOM・数式 Injection・トランザクション漏れ・Viewer/viewer 1 文字違いによる認可バイパス、20 年目フロントエンジニアの実事故記録 | @Yuta Goi | 21:59 |
| 17 | 札幌のカフェ探索アプリを作って、GeminiとGoogle Mapsを組み合わせてみた | React + Google Places + Gemini で札幌カフェを地図表示しつつ AI で雰囲気カテゴリ分けする個人開発記 | @しずか | 21:10 |
| 18 | Rails + Inertia.js + React + shadcn/ui の環境構築手順 | Rails を API 層に据え、Inertia.js + React + shadcn/ui で SPA 風 UI を構築する手順書 | @megeton | 14:08 |
| 19 | 【超入門】Node.js + Expressで始めるWebサーバー開発第一歩 | Node.js / Express の最小構成で Hello World サーバーを立ち上げる初学者向け解説 | @M.Hiroshi | 14:30 |
| 20 | AIコーディング時代、DrizzleよりAtlasよりKyselyを選んだ理由 | Claude Code に 100% 生成させる前提では ORM の抽象が AI の意図理解コストになるため、生 SQL 風に書ける Kysely + 手書きマイグレーションを採用した判断 | @peka2 | 17:28 |
| 21 | PostgreSQLのjsonb型で空値を検索する | jsonb に対し @? と jsonb_typeof() / jsonb_array_length() を組み合わせ「存在し非null・非空配列」を絞る具体クエリパターン | @胡瓜 | 14:40 |
| 22 | DevContainer+Claude CodeでRDB学習環境を構築した | VSCode DevContainer + PostgreSQL 16 + Go/Rust + Claude Code で RDB 学習環境を組み、ハマった3点まで含めて公開 | @tsuzudev05 | 10:45 |
| 23 | k8sでCloudflaredからIstio IngressGateway間の通信をTLS化する | cloudflared から Istio IngressGateway への内部通信を Istio mTLS で塞ぐ、サイドカー注入 + DestinationRule/Gateway 設定で SPIFFE 認証を確立した実装記録 | @yushi_a | 18:14 |
| 24 | Astro 5 + Content Collections で個人ブログを組む | Astro 5 + MDX + Content Collections + Tailwind + rehype-mermaid の 8 依存のみで構成、Zod refine で業務ルール強制と sitemap lastmod 制御を Schema レベルで担保 | @Aulvem | 14:13 |
| 25 | 「有向グラフ型ワークフロー」はもう限界。プロンプトのゴミを撲滅… | (Top 20 参照) | @太田政樹 | 17:58 |
| 26 | NestJSが好きだけどきつかったから2週間でWebフレームワーク作った | (Top 20 参照) | @9wick | 17:30 |
| 27 | 勝手に4GBがダウンロードされることで話題の Prompt API を使ってみた | Chrome 148 同梱の Gemini Nano (4GB) を Prompt API で実機検証、知識量壊滅的・PC かつ Chrome 148 限定で「オプション機能」止まりと評価 | @MMGames | 13:00 |
| 28 | Cloud Storage MCP サーバー 使ってみた | Cloud Storage MCP サーバーを Claude に繋ぎ、画像共有・編集ワークフローをチャット内で完結させる実験 | @S島 | 23:01 |
| 29 | MCP Apps で GCP のログを Claude のチャットに埋め込む | MCP Apps の iframe UI で Cloud Logging の REST API(entries:list)を呼び出し、選択したログを updateModelContext で Claude に直接渡す | @S島 | 21:15 |
| 30 | バイブコーディングを支える黒幕。Cloud Workstations v1.16.2 で「Agent Mode」が完全覚醒した話 | Cloud Workstations v1.16.2 の Agent Mode が自律実行・エンタープライズ向け制御を備え、AI 主導開発環境として完成した解説 | @サウナ大好きエンジニア | 10:36 |
| 31 | AWS経験者向けにGCPのOrganization / Folder / Project / Shared VPCを整理する | AWS の Organization / OU / Account / Shared VPC に対応する GCP 構造を表形式で整理した移行者向け早見表 | @hirokazu.s | 10:04 |
| 32 | 「後付け」で言語化されたWebの設計思想、RESTを理解する | Roy Fielding が Web 成功理由を逆算した6制約(C/S・ステートレス・キャッシュ・統一 IF・階層化・Code on Demand)を後付けスタイルとして整理 | @AOI Kurokawa | 10:00 |
Qiita
| # | Title | Summary | Author | Published |
|---|---|---|---|---|
| 1 | DifyやLangGraphの限界。なぜAIエージェント開発に「State(記憶・ホワイトボード)」が必要なのか | Dify / LangGraph の限界を「ノード間で State を持てない」点に置き、エージェント内部にホワイトボード状態を持たせる設計を提案 | @masaki_ohta | 19:05 |
| 2 | Google スプレッドシートを MCP で Claude に直接読み書きさせる | (Top 20 参照) | @LemonCake | 23:59 |
| 3 | pnpm monorepo でバックエンドと UI の enum drift を防ぐ | (Top 20 参照) | @mori-dev | 20:14 |
| 4 | JavaScriptとか文字化け | Worker と Blob を絡めた JS コード片で「文字化けする行はどこか」を当てる読解クイズ形式の記事 | @mashuel | 22:15 |
| 5 | C言語、Javascriptのstatic用途の明確な違いについて | C 言語の static(リンケージ/生存期間)と JS の static(クラス静的メンバ)を機能差で比較整理 | @_ohuton | 10:58 |
| 6 | Google CloudでNext.jsデプロイしてみた | Cloud Run の --source フラグだけで Next.js をビルド&デプロイする手順を最小限の事前設定込みで公開 | @DachshundLover | 22:34 |
| 7 | Supabase RLS で TO service_role が PostgREST 経由では silent に失敗する | Supabase RLS で TO service_role が PostgREST 経由では silent fail、TO public + USING(auth.role()='service_role') が正しいパターンと解説 | @DevMasatoman | 13:56 |
| 8 | Stripe Webhook が 301 で 1 週間全失敗した話 | (Top 20 参照) | @DevMasatoman | 13:56 |
| 9 | GitHub Actions cronが一度も動いていなかった:Node20×Supabase WebSocket不可とworking-directory罠 | working-directory の二重ネスト誤指定と Node 20 で Supabase Realtime の WebSocket が動かない問題が cron 全失敗の原因だった事例 | @DevMasatoman | 13:56 |
| 10 | Vitestを使ってテストを行なおうとしたが「RollupError: Parse failure: Expression expected」というエラーが発生した | Vitest 導入時に Rollup の構文解析エラーが起きた状況のトラブルログ | @inu_shun | 21:28 |
| 11 | 国会図書館OCRにAI補正機能を追加した - NDLOCR-Lite × AWS Bedrock | NDLOCR-Lite に AWS Bedrock の Claude / Nova を組み合わせて OCR 出力を補正、コスト試算込みで提示 | @ohtsuka-shota | 18:31 |
| 12 | Build a Simple Web-Based Budget Tracker App with React + Node.js! | React フロント + Node.js バックでシンプルな家計簿アプリを作るチュートリアル | @hoawehfoaw | 18:25 |
| 13 | GitHub Actions で Jest が不定期に OOM で動かなくなった原因と対応 | (Top 20 参照) | @kkaattoo | 23:57 |
| 14 | PostgreSQL 設定変更 —チェックサムの有効化— | デフォルト無効の PostgreSQL データチェックサムを initdb --data-checksums で有効化する手順と確認方法 | @t-fk_37114 | 13:25 |
| 15 | 【個人開発】旅行経験を蓄積して自分専用の持ち物リストを作るアプリ | React + TypeScript + Supabase + Chakra UI + Firebase で旅行履歴から個人別の持ち物リストを生成する個人開発記 | @keikeigo | 17:00 |
| 16 | Supabaseの認証でつまづいたこと | React Native / Expo で Supabase Auth を組む際にメール+パスワードと Google OAuth で詰まったポイントの記録 | @it | 11:43 |
| 17 | 【第1回】家でねてるRaspberry PiでIoTの実装する | 家庭内 Raspberry Pi と AWS IoT Core を MQTT Pub/Sub で繋ぐ最小構成を示した第1回 | @plustick | 23:24 |
| 18 | AWS 簡単なアラームの作成方法 | CloudWatch アラームを条件指定で作る基本手順を初学者向けに整理 | @takuto_25 | 23:06 |
| 19 | 既存のS3クライアントを2行変えるだけで、Cloudflare R2に移行する方法 | (Top 20 参照) | @fujimori53 | 22:36 |
| 20 | AWSでポートフォリオサイトを構築した:S3 + CloudFront + ACM + Cloudflare | S3 + CloudFront + ACM 証明書 + Cloudflare DNS のポートフォリオ構成を、コスト試算込みで公開 | @soh506 | 01:41 |
| 21 | 失敗してほしいのにテストが失敗しなかった | 期待された挙動を検証していないために、コード破壊しても落ちないフロントエンドテストの欠陥事例 | @kishimin | 20:44 |
| 22 | ブラウザで為替レート 5 年履歴を描く — Frankfurter API + 自前 SVG ラインチャート | API キー不要の Frankfurter API と自前 SVG ライン描画で 5 年分の為替履歴グラフをサーバーレスに描画 | @sen-ltd | 07:49 |
GIGAZINE
| # | Title | Summary | Published |
|---|---|---|---|
| 1 | AIモデルでブラウザを自動操作できる「Browser-Use」、オープンソースで開発され自然言語で簡単に指示可能 | LLM に自然言語で指示することでブラウザ操作を自動化するオープンソースツール Browser-Use の紹介 | 12:00 |
Hacker News
| # | Title | Summary | Published |
|---|---|---|---|
| 1 | LogTape 2.1.0: Throttling, logfmt, and smarter redaction(LogTape 2.1.0:スロットリング・logfmt・賢いリダクション) | (Top 20 参照) | 21:57 |