iimon TECH BLOG

iimonエンジニアが得られた経験や知識を共有して世の中をイイモンにしていくためのブログです

PMに「Hono書いて」と言われたのでCloudflareでAIチャットボットを作ってみた

◼️ はじめに ◼️ Honoとは ◼️ Cloudflareとは ◼️ 今回作成するアプリのアーキテクチャに関して 各サービスの役割 ◼️ プロジェクト作成 Honoを使用するためのプロジェクト作成 各リソースを作成 型定義のインストール D1テーブル作成 ◼️ 実装 Bindings型定義 …

JavaScriptのWeb Audio APIを使ってジングルベルを演奏してみよう

こんにちは!iimonでエンジニアをしている、でっさんです。 本記事はiimon Advent Calendar 2025 14日目の記事となります! 今年はダイエットに挑戦したものの、チートデイを設けすぎてリバウンドしてしまいました。 来年は、みなさんの助言を真摯に受…

パソコンってなんで動くの?パーツ編

はじめに 主要パーツの名称 ハードウェアとソフトウェアの違い 主要パーツの役割 トータルバランス ボトルネック現象とは? ボトルネック回避のために 適切なバランスはどうやって調べればいいの? まとめ 参考資料 はじめに こんにちは!株式会社iimonでエ…

AI-DLCを導入するとしたら?それ以前に「うちのコードベース、AIに説明できる状態ですか?」

はじめに AI-DLCとは なんの略称やねん AI-Driven Development Lifecycleの概念 開始( Inception )フェーズ 構築( Construction )フェーズ 運用( Operation )フェーズ スプリントでは遅い!?ボルトという単位 AI-DLC実践事例 そもそもこの記事を書こうと思…

EXPLAINで探る!SQLが速くなる・遅くなる理由

はじめに 前提 EXPLAIN(実行計画)とは EXPLAINを使ってみる EXPLAIN の主なフィールドを見てみよーー インデックスありと無しのEXPLAINを比較してみた ▼ インデックス無しで検索した場合の EXPLAIN ▼ インデックスありで検索した場合の EXPLAIN カバリング…

React Router v7を使ったルーティングを体験してみた

■はじめに ■環境 ■React Routerのインストール ■基本的なルーティングの定義 ◆コンポーネント ■ネストルーティングの定義 ◆パスを完全指定した場合のルーティング ◆ネストルーティングと< Outlet >を使った共通レイアウトの維持 ■ルーティング定義の分割 ■UR…

AIコーディングエージェントの理解を深めるために自作してみた

こんにちは!iimonでCTOをしているもりごです。 本記事はiimon Advent Calendar 20259日目の記事となります! 最近ではClaude Code、Cursor、CodexなどAIコーディングエージェントを使用してコードを書くことが当たり前の様になっています。 こういったAIコ…

Chrome拡張機能を自動リロードするVite Pluginを自作してみた

はじめに 本記事はiimon Advent Calendar 2025 8日目の記事となります。 SREチームに所属しています。hogeです。 普段はインフラまわりの業務が中心なのですが、時折プロダクト開発チームが進めているChrome拡張機能の開発を手伝うことがあります。 また、個…

積読解消プロジェクト「リファクタリング(第2版)既存のコードを安全に改善する」Part1

はじめに 個人的にリファクタリングについて思うこと リファクタリングの原則 リファクタリングの定義 リファクタリングをする理由 リファクタリングはプログラミングを速める より詳しくリファクタする理由を考える リファクタリングの問題点 リファクタリ…

Chrome拡張機能のE2Eテスト自動化を検討してみた

1. はじめに 2. なぜE2Eテストの自動化を検討しているのか 現状の課題 自動化で解決したいこと 3. E2Eテストツールの比較 Playwright Puppeteer Cypress Selenium 比較まとめ 4. Chrome拡張機能のE2Eテスト、ここが難しい 通常のWebアプリとの違い 拡張機能…