Junya Labo
全 77 件のアプリ / タップで詳細・↗ で起動
🔄 更新順77
自作の社内AIチャットbot(モック版)。調べ物や文章作成を手伝う汎用チャットに加え、規程・マニュアルを登録すると出典(○○規程 第○条)つきで答えてくれる規定検索モードを搭載。文書はスキャンPDF・Word・Excel・PowerPointに対応し、管理画面から登録するだけで自動で検索できるようになる。
セレサ川崎の「がんばり野菜」キャラを物理エンジンで積み上げるどうぶつタワーバトル風ゲーム。ドラッグで位置決め・回転させて、どこまで高く積めるかに挑戦。落としたらライフが減り3回でゲームオーバー。
セレサ川崎の「がんばり野菜」キャラで遊ぶ縦スクロール型リズムゲーム。畑の4本の畝を4レーンに見立て、降ってくる野菜を収穫ラインでタップ。3曲×3難易度、音源ファイルを一切使わずWeb Audio APIでBGM・伴奏・効果音をすべて合成している。
ゲートでなかまを増やして、暴走するがんばり野菜の大群をしゅうかくする爽快縦スクロールゲートランナー。旧ゾンビラッシュの野菜リニューアル版。武器5種・でっかい野菜・ボス(たがやすはかせ)・永続強化・全国ランキング付き。
棒人間が自動で走り、ジャンプでトゲ・穴・箱を避けるランナー系アクション。やさしい(ハート3つ)/ふつうの2モード、コイン集めと100mごとのお祝い演出つき。子供も遊べるiPad/スマホ最適化。
株自動売買Botが実行した取引を人間が振り返るための可視化ダッシュボード(開発中)。立花証券APIから保有株と損益を取得してグラフ表示し、将来的にはLLMによる売買シグナル提案も組み込む構想。完全自律ではなく「AIが提案し人間が判断する」ヒューマン・イン・ザ・ループを前提に設計している。API制限やモデル選定など検討事項が多く、構成はまだ流動的。
身長と体重を入れるとBMIを計算し、日本肥満学会の基準で判定を表示する。値を出すだけで終わらせず、標準体重(BMI22)や健康範囲にあたる体重の上限・下限まで逆算して具体的な数値で示す。判定はCSSグラデーションのゲージバー上をポインターが滑らかに動くかたちで視覚化され、Enterキーだけで計算を実行できる。
画面をタップしたリズムから曲のテンポを割り出すツール。タップのたびにperformance.now()で高精度なタイムスタンプを記録し、直近の間隔の移動平均からBPMを算出する。人のタップの揺れを平滑化しつつ反応が鈍らないよう平均に使うタップ数を調整し、一定数溜まってから値を表示する。AndanteやAllegroといったテンポ名も自動で示し、スマホで押しやすいよう画面の大部分をタッチエリアにした。
JAセレサ川崎・JA横浜をはじめ近隣の銀行・信用金庫の預金金利を自動収集し、一覧で比べられるサービス。Pythonのスクレイパーが各社の金利ページを巡回してJSONに保存し、Node.js側が普通預金と1〜5年の定期預金の比較表を生成する。渉外担当が「自社の金利は他行と比べてどうか」をその場で説明する材料に使えることを最優先に設計した。
Node.js(Express)とSocket.ioで作ったリアルタイムチャット。ルームを分けて複数グループが同時に会話でき、メッセージは双方向通信で即座に届く。履歴はDBに保存せずサーバーのメモリ上だけに置くため再起動でリセットされ、訓練中の連絡のように残す必要のない用途に割り切っている。回線が切れた際の再接続後のルーム再参加処理まで実装した。
GUIでテーブル・フォーム・ワークフローを組み立てられる国産のノーコード業務アプリ基盤(OSS版)を、OCI Oracle Cloud上に立てて運用している。バックエンドDBはPostgreSQLで、カスタムCSSやスクリプトで外観を調整できる。JA業務向けのデータ管理をコードを書かずに素早く形にでき、別途作ったCSVインポーターと組み合わせれば大量データの一括登録もこなせる。
テキストやURLを入力すると、その場でQRコードを生成してPNGとして保存できる。qrcode.jsでブラウザ内のCanvasに描画し、Canvas.toDataURL()で画像化するため、サーバー通信は一切発生しない。API連携もないのでインフラ障害の影響を受けず、ページさえ開けば必ず動く。農業イベントのPR用や圃場看板用のQRコードを手軽に作る用途で使っている。
四則演算の問題をMath.random()でその場ランダム生成し、難易度に応じて出題する数値の範囲を変える小学生向けの算数練習。正解・不正解はアニメーションで返し、スコアと連続正解数を表示してゲーム感覚で続けられるようにしている。割り算は除数を先に決めて被除数をその倍数として作るため、必ず割り切れる問題だけが出る。配色と絵文字は農業テーマで統一。
小節ごとにコードを打ち込んで演奏用のコード譜を作り、印刷まで行える手動入力型のツール。ドラッグ&ドロップで小節を並べ替えられ、印刷用CSSで改ページ位置を制御しているため、紙に出したときもページをまたがず見やすい。YouTubeからAIで自動生成する別アプリとは対照的に、耳コピした曲や練習曲の譜面を自分で作る用途向けで、バンド練習で配るコード譜作りに使っている。
スーパーのチラシ画像をアップロードすると、Gemini Vision APIが商品名・価格・単位を読み取ってJSON化し、複数店舗分を並べた比較表を自動生成するツール。ヤオコー・いなげやのチラシを想定していた。マルチモーダルAIとプロンプトによる構造化出力の実験を兼ねた、Basic認証付きのプライベートツール。
バンド練習や本番の演奏曲順をブラウザだけで組めるツール。セットリストを複数持てて切り替えられ、曲の追加・削除・並び替えができる。内容はLocalStorageに保存されるのでリロードしても消えず、印刷用CSSを用意しているため本番当日は紙に出して手元に置ける。各曲にユニークIDを振って管理している。
セレサ川崎の業務用語・農業用語を打って覚えるタイピングゲーム。難易度はeasy/medium/hard/allから選べ、基本点にコンボ倍率(3連続で1.5倍、5連続で2.0倍、8連続で3.0倍)が乗り、ミスは-3点。スコアに応じて新人職員から川崎農業の神まで7段階の称号が決まる。日本語入力の変換中は判定を止めるIME対応を入れ、記録はサーバー側のランキングに保存される。
カウントダウンタイマーとストップウォッチを1つにまとめたツール。ストップウォッチではラップを記録して一覧に追記でき、タイマーは終了時にビープ音で知らせる。音は外部の音声ファイルを使わずWeb Audio APIで生成している。タブを裏に回すとsetIntervalの実行頻度が落ちる問題に対しては、performance.now()の絶対時刻との差分で残り時間を計算し直してズレを補正する。
ブラウザのマイクで楽器の音を拾い、Web Audio APIで取得した波形を自動相関法で解析してピッチを検出するチューナー。周波数をMIDIノート番号に変換して音名とセント誤差を求め、アナログメーター風のUIでずれを直感的に確認できる。FFTより計算量が軽くリアルタイム処理向きな一方、倍音の多いギターなどではオクターブ誤りが出ることがある。
7種類のテトロミノの生成・落下・回転・ライン消去まで、コアロジックを一から実装したブラウザ版テトリス。描画はCanvas 2Dで、レベルが上がるほど落下間隔が短くなってスピードが増していく。回転時に壁へめり込む場合の「壁蹴り」はSRS(Super Rotation System)を参考にした処理を入れている。ブロックの色は農業テーマに合わせた緑系のパレット。
大文字・小文字・数字・記号を組み合わせたランダムなパスワードを作るツール。長さと使う文字種は自由に設定でき、生成した文字列はワンクリックでクリップボードにコピーできる。乱数にはMath.random()ではなくWeb Crypto APIのcrypto.getRandomValues()を使い、予測されにくい暗号学的乱数から文字を選ぶ。剰余による偏りが出る点も意識して実装している。
5×5のビンゴカードを、1〜75の数字を各列の範囲に重複なく振り分けて自動生成する。抽選した番号を管理して既出の数字を一覧表示し、縦・横・斜めの12ラインをその都度判定してビンゴを知らせる。農業イベントやJAの地域行事での利用を想定し、スマホ1台でホストが操作しながら参加者にカードを配れるタップしやすいレイアウトにしている。
投球結果を入力していくとスコアが自動で埋まっていくボウリング用の計算アプリ。ストライク翌2投・スペア翌1投の加算や第10フレームの特別ルールまでルール通りに実装し、ロール配列全体を参照することで「未来の投球に依存する」計算を正しく処理する。プレイヤーごとに配列を独立管理しているので複数人でそのまま回せる。
名前と生年月日を入れるとやる気を診断してくれる、JA・農業テーマのエンタメ占い。入力値を文字コードベースの独自ハッシュでシード化した疑似乱数で結果を選ぶため、同じ人が何度やっても必ず同じ結果になる。Math.random()では作れないこの再現性が「自分だけの結果」という納得感を生み、SNSでシェアしたくなる体験を狙っている。
名前と誕生日を入れると、JA・農業をテーマにした結果文でやる気を占ってくれるエンタメ占いの旧バージョン。入力値から独自のハッシュ計算でシード値を作って結果を決めるため、同じ入力なら何度やっても同じ結果が返る再現性のある作りになっている。junya-labo側の新版と区別するため、旧URLを壊さないよう独立した配置のまま残している。
飲み会や旅行の費用を人数で割るための計算ツール。入力欄は合計金額・人数・端数処理の3項目だけに絞ってあり、Enterキーひとつで結果が出るのでスマホ片手に会計の場で使える。端数を切り上げた場合は差額を幹事が引き受ける形、切り捨てた場合は誰かが追加負担する形として、その差額まで自動で計算して表示する。実際によく使われる切り上げを基本に据えている。
川崎市公式サイトから行政ニュースやお知らせを収集してSQLiteに蓄積し、麻生・多摩・高津・宮前・中原・幸・川崎の7区+全体で絞り込んで読めるビューア。記事は要約付きで保存され、区ごとの件数を集計して発信量の偏りも見られる。担当地区の行政情報を素早く確認する用途を優先した設計で、収集はスクレイピングのため公式サイトの改修に弱いという弱点もある。
川崎市の火災・防災情報とJA関連ニュースを集めて表示する監視ダッシュボード。収集役のmonitor.jsが定期的に情報を取得してJSONファイルを更新し、表示側のサーバーがそれを読んでHTMLを組み立てる2層構造になっている。2026年7月に火災監視・JAニュース・JA金利比較を独立プロセスへ分割し、1つを更新しても他が止まらないようにした。LINE Webhookの受け口も同じサーバーに持つ。
参加者の名前を入力するだけで座席をランダムに割り当てるくじ引きツール。Fisher-Yates法でシャッフルし、テーブル図を動的に生成して誰がどこに座るかを視覚的に表示する。人数やテーブル数が毎回違っても対応できるよう配置図を可変にしており、シャッフルアニメーションで「誰が隣になるか」を待つ間の盛り上がりも演出する。飲み会や研修の席決めにそのまま画面を見せて使える。
消防団の小型ポンプ操法訓練を支援するアプリで、マニュアル閲覧・審査シート・計時・訓練履歴の管理を一本化している。団員情報と訓練記録をSQLiteで管理し、30項目以上ある審査の減点内訳はJSON配列で保存して詳細画面で展開表示する。訓練中は片手でスマホを操作するためボタンを大きく取った。実際の訓練現場でヒアリングして要件を決めた登戸班向けの特化版。
1からNまでの範囲でランダムに数字を引くくじ引きツール。飲み会やイベントの抽選向けで、一度出た数字を除外して全員に一巡させられるダブりなしモードを備える。数字がくるくる回ってから止まる演出を入れており、setIntervalの間隔を段階的に伸ばして減速を表現している。不正防止の必要がない用途と割り切り、乱数はMath.random()でシンプルに済ませた。
農業・農協関連のニュース記事を定期的に収集してSQLiteに蓄積し、キーワード別に絞り込んで読めるビューア。キーワードをタグとして管理し件数でランキング表示することで、今どんな話題が多いかを一目で把握できる。一覧APIでは先頭200文字のプレビューだけを返し、全文は個別記事APIで取得する2段階設計にして、データ量と表示速度のバランスを取っている。
野菜・果物ごとに旬の月を持たせたデータを内蔵し、月を選ぶとその月に旬を迎えるものだけを絞り込んで絵文字カードで一覧表示する。農業者には今何を出荷すべきか、消費者には今何が美味しいかという両方の見方を同じ画面で満たす狙い。旬は産地や早生・晩生で幅があるため、農林水産省の旬情報を基準にし、判断に迷うものは広めの月範囲を取っている。
画面の上から落ちてくる旬の野菜・果物の絵文字を、クリックやタップでキャッチしていくゲーム。スコアと落下スピードがリアルタイムに表示される。Canvasを使わずDOM要素とCSSアニメーションだけで動かしており、要素が増えすぎて重くならないよう同時表示数とスポーン頻度に上限を設けている。旬の食材を遊びながら覚えられる、子ども向けの教育コンテンツ。
立花証券のe-支店APIをPythonから叩いて株式の売買を自動化するBot。移動平均やRSIといったテクニカル指標をPandasで計算してシグナルを判定し、売買ルールの設定やポジション確認はStreamlitのUIで行う。実弾が動くためテスト/本番モードの切り替えと誤発注防止の二重確認、注文サイズ上限とストップロスを備え、認証情報は.envに隔離してローカルMacのみで動かしている。
農作物に水をかけて育てるCanvas製のシューティングゲーム。家・梨の木・雲といった背景はライブラリを使わずCanvas 2D APIで手描きしており、効果音もWeb Audio APIのトーン生成で鳴らしている。requestAnimationFrameのゲームループ上で物理演算と当たり判定を処理し、動かない背景は別レイヤーに一度だけ描いてフレームごとの再描画を避けている。
渉外担当者の訪問件数や契約件数といった実績を、紙の台帳の代わりにデジタルで記録・集計する業務システム。Next.jsのApp Routerとbetter-sqlite3で構築し、rechartsのグラフで今月の訪問状況や先月比を一目で把握できる。Server Componentsでの初期データ取得とClient Componentsでのインタラクションを分離して構成した。
野菜をモチーフにした絵文字カード15種を使う神経衰弱。かんたん8ペアとむずかしい15ペアの2難易度があり、カードはFisher-Yates法でシャッフル、めくった2枚の一致判定は絵文字を持たせたdata属性の比較で行う。経過時間はタイマーで計測する。不一致のときにカードを見せておく時間は、確認できてテンポも損なわない0.9秒に調整した。
家族6人それぞれの「行った・泊まった・住んだ」を47都道府県で記録する経県マップ。県をタップするたびに未踏→行った(+1)→泊まった(+2)→住んだ(+3)と切り替わり、経県スコアが自動計算される。みんなタブでは家族全員の合算マップと、点数・県数のランキングが見られる。
圃場の面積と施肥基準(kg/10a)から必要な肥料量を求める計算ツール。面積は㎡・a・反を切り替えて入力でき、さらに肥料の成分含有率から実際に用意すべき肥料そのものの重量を逆算できる。N-P-K表記とチッソ何%といった表記が現場で混在するため、どちらの入力にも対応させた。農薬希釈計算・面積換算と合わせ、施肥指導の場でスマホから使うことを想定している。
バンド「農協」のための活動管理アプリ。セットリストの作成・共有、メンバー管理、練習メモをまとめて扱える。ライブや練習の現場でサッと確認できるよう、スマホでの操作を前提にUIを組んでいる。画面はReact + Viteで作り、データはExpress + SQLiteのAPI側で保持する構成。
東京・大田市場の農産物市況データを取得してグラフで確認できるダッシュボード。Pythonのスクレイパーが集めたデータをSQLiteに保存し、Node.js側がAPIとして配信する。ブロッコリー・だいこん・トマトなど川崎市の作付面積上位15品目を優先して並べ、単なる市場データではなく地元農家がすぐ役立てられる情報にしている。データがいつ時点のものかも画面上に明示する。
農業やJA業務の専門用語を4択形式で学べるクイズ。出題順はFisher-Yates法で毎回シャッフルされ、回答するとその場で正誤と解説が出て、全問終わるとスコアと正答率が表示される。解説は実際の業務経験をもとに「なぜそうなのか」まで書き込んでいる。問題データとロジックを完全に分離してあるため、データを足すだけで内容を増やせる。
水量と希釈倍率を入れると、必要な薬液量を「水量(L)×1000÷希釈倍率」で即座に計算する。ml/L/ccの単位は自動変換され、複数の農薬をまとめて計算することもできる。農薬ラベルにある「〇〇倍」と「〇〇ml/10L」の両方の表記に対応。圃場で手袋をしたままでも使えるよう入力項目を最小限にしたUIで、スマホからその場で使える。
テレビ番組風の逃走中ゲームを盛り上げるカウントダウンタイマー。5分・10分・30分などのプリセットか任意の時間を指定してスタートすると、Web Speech APIが「残り〇分です」「ゲームスタート」といったアナウンスを日本語音声で読み上げる。読み上げ速度をやや早口に設定して緊張感を出しており、地域イベントやチームビルディングの進行にそのまま使える。
M4A・MP3などの音声ファイルをMP3に変換し、1時間単位や任意のタイムスタンプで分割できるブラウザツール。FFmpeg.wasmをWebAssemblyとしてブラウザ内で直接動かすため、音声をサーバーにアップロードせずに処理でき、プライバシーが守られる。JAの会議録音や講演の音源を配布しやすいサイズに切り分ける実務ニーズから作った。Basic認証付き。
上端が野菜キャラ、下端が結果になったあみだくじ。2〜10人に対応し、参加者ごとに野菜が自動で割り当てられる(名前は編集可)。結果は「あたり本数を指定」と「各枠に自由入力」の2モードで、幹事決めから席順、飲み会の罰ゲームまで使える。1人ずつ線をなぞるアニメで、辿り終わるまで結果は見えない。
トランプのスートを野菜4種に置き換えたクロンダイク(Windows標準のソリティア)。赤黒の代わりに「あか組(トマト・いちご)」と「みどり組(きゅうり・ブロッコリー)」を交互に重ねる。1枚/3枚めくりの切替、多段アンドゥ、オートコンプリートまで備えた本格版で、スマホ縦持ちで7列がきちんと収まる。
7種のミノにそれぞれ野菜キャラを割り当てた本格テトリス。I=きゅうり、O=たまご、T=トマト、S=アスパラ、Z=香辛子、J=ぶどう、L=みかんで、同じ形は必ず同じ野菜=色の代わりに野菜で見分ける。7-bag・ゴースト・ホールド・SRS壁蹴り・ロックディレイまで実装した、見た目だけ野菜の“ちゃんとしたテトリス”。
畑に隠れた「もぐら」を数字のヒントで避けながら、畑を全部掘り起こすマインスイーパ。地雷=もぐら、旗=かかしに置き換えた農業版。かんたん(9×9/10ぴき)・ふつう(12×12/25ひき)・むずかしい(16×16/45ひき)の3段階で、難易度ごとにベストタイムを記録する。
がんばり野菜のキャラカードをめくって同じ野菜のペアを揃える神経衰弱。かんたん(3×4)/ふつう(4×5)/むずかしい(4×6)の3段階で、ひとりモードはタイムとめくり回数を記録してベスト更新を狙える。交互にめくって取った枚数を競うふたり対戦モードもあり、職場や家族でそのまま遊べる。
安全なファイル交換システム。ファイルをAES-256-GCMで暗号化保存し、受取人にはURLだけをメールで案内。受取時に「認証コードを送る」を押すと本人のメールに6桁ワンタイムコードが届き、入力するとダウンロードできる(PPAP問題を回避したオンデマンド認証方式)。全操作はハッシュチェーン監査ログに記録され、改ざん検知・CSVエクスポート・Discord通知に対応。
がんばり野菜シリーズ初の3Dゲーム。畑の一本道を走り続ける前方視点エンドレスランナーで、スワイプでレーン移動・ジャンプ・スライディングして障害物(わらロール・かんばん・トラクター・カカシ・あな)をかわしながらたまごを集める。おひさまパワー(無敵)とたまごマグネットのパワーアップ付き。走った距離で昼→夕方→夜と景色が変わる。
セレサ川崎の「がんばり野菜」キャラで遊ぶ見下ろし型カートレースゲーム。8台レース・3周制で、スタートダッシュ・ドリフト→ミニターボ・アイテムバトル(ひりょうダッシュ/にんじんミサイル/トマトボム/たいひトラップ/おひさまパワー)を搭載。コースは3種で、最終コース「にじいろのうどう」はコースアウトすると落下する高難度仕様。
iPadやPCのブラウザから会議をそのまま録音、またはICレコーダー等の音声ファイル(wav/mp3/m4a/mp4)をアップロードすると、Gemini AIが日本語の全文文字起こしを行う業務ツール。録音データは約15秒ごとに自動でサーバーへ送信されるため事故に強く、音声は30日保存で自動削除。JA・金融・共済・営農の専門用語に対応した文字起こしプロンプトを搭載。
★ よく使う8
バンド「農協」のための活動管理アプリ。セットリストの作成・共有、メンバー管理、練習メモをまとめて扱える。ライブや練習の現場でサッと確認できるよう、スマホでの操作を前提にUIを組んでいる。画面はReact + Viteで作り、データはExpress + SQLiteのAPI側で保持する構成。
ゲートでなかまを増やして、暴走するがんばり野菜の大群をしゅうかくする爽快縦スクロールゲートランナー。旧ゾンビラッシュの野菜リニューアル版。武器5種・でっかい野菜・ボス(たがやすはかせ)・永続強化・全国ランキング付き。
🌾 農業13
セレサ川崎の業務用語・農業用語を打って覚えるタイピングゲーム。難易度はeasy/medium/hard/allから選べ、基本点にコンボ倍率(3連続で1.5倍、5連続で2.0倍、8連続で3.0倍)が乗り、ミスは-3点。スコアに応じて新人職員から川崎農業の神まで7段階の称号が決まる。日本語入力の変換中は判定を止めるIME対応を入れ、記録はサーバー側のランキングに保存される。
野菜・果物ごとに旬の月を持たせたデータを内蔵し、月を選ぶとその月に旬を迎えるものだけを絞り込んで絵文字カードで一覧表示する。農業者には今何を出荷すべきか、消費者には今何が美味しいかという両方の見方を同じ画面で満たす狙い。旬は産地や早生・晩生で幅があるため、農林水産省の旬情報を基準にし、判断に迷うものは広めの月範囲を取っている。
画面の上から落ちてくる旬の野菜・果物の絵文字を、クリックやタップでキャッチしていくゲーム。スコアと落下スピードがリアルタイムに表示される。Canvasを使わずDOM要素とCSSアニメーションだけで動かしており、要素が増えすぎて重くならないよう同時表示数とスポーン頻度に上限を設けている。旬の食材を遊びながら覚えられる、子ども向けの教育コンテンツ。
農作物に水をかけて育てるCanvas製のシューティングゲーム。家・梨の木・雲といった背景はライブラリを使わずCanvas 2D APIで手描きしており、効果音もWeb Audio APIのトーン生成で鳴らしている。requestAnimationFrameのゲームループ上で物理演算と当たり判定を処理し、動かない背景は別レイヤーに一度だけ描いてフレームごとの再描画を避けている。
圃場の面積と施肥基準(kg/10a)から必要な肥料量を求める計算ツール。面積は㎡・a・反を切り替えて入力でき、さらに肥料の成分含有率から実際に用意すべき肥料そのものの重量を逆算できる。N-P-K表記とチッソ何%といった表記が現場で混在するため、どちらの入力にも対応させた。農薬希釈計算・面積換算と合わせ、施肥指導の場でスマホから使うことを想定している。
東京・大田市場の農産物市況データを取得してグラフで確認できるダッシュボード。Pythonのスクレイパーが集めたデータをSQLiteに保存し、Node.js側がAPIとして配信する。ブロッコリー・だいこん・トマトなど川崎市の作付面積上位15品目を優先して並べ、単なる市場データではなく地元農家がすぐ役立てられる情報にしている。データがいつ時点のものかも画面上に明示する。
農業やJA業務の専門用語を4択形式で学べるクイズ。出題順はFisher-Yates法で毎回シャッフルされ、回答するとその場で正誤と解説が出て、全問終わるとスコアと正答率が表示される。解説は実際の業務経験をもとに「なぜそうなのか」まで書き込んでいる。問題データとロジックを完全に分離してあるため、データを足すだけで内容を増やせる。
🔧 ツール13
身長と体重を入れるとBMIを計算し、日本肥満学会の基準で判定を表示する。値を出すだけで終わらせず、標準体重(BMI22)や健康範囲にあたる体重の上限・下限まで逆算して具体的な数値で示す。判定はCSSグラデーションのゲージバー上をポインターが滑らかに動くかたちで視覚化され、Enterキーだけで計算を実行できる。
Node.js(Express)とSocket.ioで作ったリアルタイムチャット。ルームを分けて複数グループが同時に会話でき、メッセージは双方向通信で即座に届く。履歴はDBに保存せずサーバーのメモリ上だけに置くため再起動でリセットされ、訓練中の連絡のように残す必要のない用途に割り切っている。回線が切れた際の再接続後のルーム再参加処理まで実装した。
テキストやURLを入力すると、その場でQRコードを生成してPNGとして保存できる。qrcode.jsでブラウザ内のCanvasに描画し、Canvas.toDataURL()で画像化するため、サーバー通信は一切発生しない。API連携もないのでインフラ障害の影響を受けず、ページさえ開けば必ず動く。農業イベントのPR用や圃場看板用のQRコードを手軽に作る用途で使っている。
スーパーのチラシ画像をアップロードすると、Gemini Vision APIが商品名・価格・単位を読み取ってJSON化し、複数店舗分を並べた比較表を自動生成するツール。ヤオコー・いなげやのチラシを想定していた。マルチモーダルAIとプロンプトによる構造化出力の実験を兼ねた、Basic認証付きのプライベートツール。
カウントダウンタイマーとストップウォッチを1つにまとめたツール。ストップウォッチではラップを記録して一覧に追記でき、タイマーは終了時にビープ音で知らせる。音は外部の音声ファイルを使わずWeb Audio APIで生成している。タブを裏に回すとsetIntervalの実行頻度が落ちる問題に対しては、performance.now()の絶対時刻との差分で残り時間を計算し直してズレを補正する。
大文字・小文字・数字・記号を組み合わせたランダムなパスワードを作るツール。長さと使う文字種は自由に設定でき、生成した文字列はワンクリックでクリップボードにコピーできる。乱数にはMath.random()ではなくWeb Crypto APIのcrypto.getRandomValues()を使い、予測されにくい暗号学的乱数から文字を選ぶ。剰余による偏りが出る点も意識して実装している。
参加者の名前を入力するだけで座席をランダムに割り当てるくじ引きツール。Fisher-Yates法でシャッフルし、テーブル図を動的に生成して誰がどこに座るかを視覚的に表示する。人数やテーブル数が毎回違っても対応できるよう配置図を可変にしており、シャッフルアニメーションで「誰が隣になるか」を待つ間の盛り上がりも演出する。飲み会や研修の席決めにそのまま画面を見せて使える。
M4A・MP3などの音声ファイルをMP3に変換し、1時間単位や任意のタイムスタンプで分割できるブラウザツール。FFmpeg.wasmをWebAssemblyとしてブラウザ内で直接動かすため、音声をサーバーにアップロードせずに処理でき、プライバシーが守られる。JAの会議録音や講演の音源を配布しやすいサイズに切り分ける実務ニーズから作った。Basic認証付き。
⚙️ DX7
GUIでテーブル・フォーム・ワークフローを組み立てられる国産のノーコード業務アプリ基盤(OSS版)を、OCI Oracle Cloud上に立てて運用している。バックエンドDBはPostgreSQLで、カスタムCSSやスクリプトで外観を調整できる。JA業務向けのデータ管理をコードを書かずに素早く形にでき、別途作ったCSVインポーターと組み合わせれば大量データの一括登録もこなせる。
消防団の小型ポンプ操法訓練を支援するアプリで、マニュアル閲覧・審査シート・計時・訓練履歴の管理を一本化している。団員情報と訓練記録をSQLiteで管理し、30項目以上ある審査の減点内訳はJSON配列で保存して詳細画面で展開表示する。訓練中は片手でスマホを操作するためボタンを大きく取った。実際の訓練現場でヒアリングして要件を決めた登戸班向けの特化版。
渉外担当者の訪問件数や契約件数といった実績を、紙の台帳の代わりにデジタルで記録・集計する業務システム。Next.jsのApp Routerとbetter-sqlite3で構築し、rechartsのグラフで今月の訪問状況や先月比を一目で把握できる。Server Componentsでの初期データ取得とClient Componentsでのインタラクションを分離して構成した。
安全なファイル交換システム。ファイルをAES-256-GCMで暗号化保存し、受取人にはURLだけをメールで案内。受取時に「認証コードを送る」を押すと本人のメールに6桁ワンタイムコードが届き、入力するとダウンロードできる(PPAP問題を回避したオンデマンド認証方式)。全操作はハッシュチェーン監査ログに記録され、改ざん検知・CSVエクスポート・Discord通知に対応。
📰 ニュース・情報7
JAセレサ川崎・JA横浜をはじめ近隣の銀行・信用金庫の預金金利を自動収集し、一覧で比べられるサービス。Pythonのスクレイパーが各社の金利ページを巡回してJSONに保存し、Node.js側が普通預金と1〜5年の定期預金の比較表を生成する。渉外担当が「自社の金利は他行と比べてどうか」をその場で説明する材料に使えることを最優先に設計した。
川崎市公式サイトから行政ニュースやお知らせを収集してSQLiteに蓄積し、麻生・多摩・高津・宮前・中原・幸・川崎の7区+全体で絞り込んで読めるビューア。記事は要約付きで保存され、区ごとの件数を集計して発信量の偏りも見られる。担当地区の行政情報を素早く確認する用途を優先した設計で、収集はスクレイピングのため公式サイトの改修に弱いという弱点もある。
川崎市の火災・防災情報とJA関連ニュースを集めて表示する監視ダッシュボード。収集役のmonitor.jsが定期的に情報を取得してJSONファイルを更新し、表示側のサーバーがそれを読んでHTMLを組み立てる2層構造になっている。2026年7月に火災監視・JAニュース・JA金利比較を独立プロセスへ分割し、1つを更新しても他が止まらないようにした。LINE Webhookの受け口も同じサーバーに持つ。
🎵 音楽7
画面をタップしたリズムから曲のテンポを割り出すツール。タップのたびにperformance.now()で高精度なタイムスタンプを記録し、直近の間隔の移動平均からBPMを算出する。人のタップの揺れを平滑化しつつ反応が鈍らないよう平均に使うタップ数を調整し、一定数溜まってから値を表示する。AndanteやAllegroといったテンポ名も自動で示し、スマホで押しやすいよう画面の大部分をタッチエリアにした。
小節ごとにコードを打ち込んで演奏用のコード譜を作り、印刷まで行える手動入力型のツール。ドラッグ&ドロップで小節を並べ替えられ、印刷用CSSで改ページ位置を制御しているため、紙に出したときもページをまたがず見やすい。YouTubeからAIで自動生成する別アプリとは対照的に、耳コピした曲や練習曲の譜面を自分で作る用途向けで、バンド練習で配るコード譜作りに使っている。
バンド練習や本番の演奏曲順をブラウザだけで組めるツール。セットリストを複数持てて切り替えられ、曲の追加・削除・並び替えができる。内容はLocalStorageに保存されるのでリロードしても消えず、印刷用CSSを用意しているため本番当日は紙に出して手元に置ける。各曲にユニークIDを振って管理している。
ブラウザのマイクで楽器の音を拾い、Web Audio APIで取得した波形を自動相関法で解析してピッチを検出するチューナー。周波数をMIDIノート番号に変換して音名とセント誤差を求め、アナログメーター風のUIでずれを直感的に確認できる。FFTより計算量が軽くリアルタイム処理向きな一方、倍音の多いギターなどではオクターブ誤りが出ることがある。
📚 教育3
四則演算の問題をMath.random()でその場ランダム生成し、難易度に応じて出題する数値の範囲を変える小学生向けの算数練習。正解・不正解はアニメーションで返し、スコアと連続正解数を表示してゲーム感覚で続けられるようにしている。割り算は除数を先に決めて被除数をその倍数として作るため、必ず割り切れる問題だけが出る。配色と絵文字は農業テーマで統一。
🎮 ゲーム20
セレサ川崎の「がんばり野菜」キャラを物理エンジンで積み上げるどうぶつタワーバトル風ゲーム。ドラッグで位置決め・回転させて、どこまで高く積めるかに挑戦。落としたらライフが減り3回でゲームオーバー。
セレサ川崎の「がんばり野菜」キャラで遊ぶ縦スクロール型リズムゲーム。畑の4本の畝を4レーンに見立て、降ってくる野菜を収穫ラインでタップ。3曲×3難易度、音源ファイルを一切使わずWeb Audio APIでBGM・伴奏・効果音をすべて合成している。
ゲートでなかまを増やして、暴走するがんばり野菜の大群をしゅうかくする爽快縦スクロールゲートランナー。旧ゾンビラッシュの野菜リニューアル版。武器5種・でっかい野菜・ボス(たがやすはかせ)・永続強化・全国ランキング付き。
棒人間が自動で走り、ジャンプでトゲ・穴・箱を避けるランナー系アクション。やさしい(ハート3つ)/ふつうの2モード、コイン集めと100mごとのお祝い演出つき。子供も遊べるiPad/スマホ最適化。
7種類のテトロミノの生成・落下・回転・ライン消去まで、コアロジックを一から実装したブラウザ版テトリス。描画はCanvas 2Dで、レベルが上がるほど落下間隔が短くなってスピードが増していく。回転時に壁へめり込む場合の「壁蹴り」はSRS(Super Rotation System)を参考にした処理を入れている。ブロックの色は農業テーマに合わせた緑系のパレット。
投球結果を入力していくとスコアが自動で埋まっていくボウリング用の計算アプリ。ストライク翌2投・スペア翌1投の加算や第10フレームの特別ルールまでルール通りに実装し、ロール配列全体を参照することで「未来の投球に依存する」計算を正しく処理する。プレイヤーごとに配列を独立管理しているので複数人でそのまま回せる。
名前と生年月日を入れるとやる気を診断してくれる、JA・農業テーマのエンタメ占い。入力値を文字コードベースの独自ハッシュでシード化した疑似乱数で結果を選ぶため、同じ人が何度やっても必ず同じ結果になる。Math.random()では作れないこの再現性が「自分だけの結果」という納得感を生み、SNSでシェアしたくなる体験を狙っている。
名前と誕生日を入れると、JA・農業をテーマにした結果文でやる気を占ってくれるエンタメ占いの旧バージョン。入力値から独自のハッシュ計算でシード値を作って結果を決めるため、同じ入力なら何度やっても同じ結果が返る再現性のある作りになっている。junya-labo側の新版と区別するため、旧URLを壊さないよう独立した配置のまま残している。
野菜をモチーフにした絵文字カード15種を使う神経衰弱。かんたん8ペアとむずかしい15ペアの2難易度があり、カードはFisher-Yates法でシャッフル、めくった2枚の一致判定は絵文字を持たせたdata属性の比較で行う。経過時間はタイマーで計測する。不一致のときにカードを見せておく時間は、確認できてテンポも損なわない0.9秒に調整した。
家族6人それぞれの「行った・泊まった・住んだ」を47都道府県で記録する経県マップ。県をタップするたびに未踏→行った(+1)→泊まった(+2)→住んだ(+3)と切り替わり、経県スコアが自動計算される。みんなタブでは家族全員の合算マップと、点数・県数のランキングが見られる。
テレビ番組風の逃走中ゲームを盛り上げるカウントダウンタイマー。5分・10分・30分などのプリセットか任意の時間を指定してスタートすると、Web Speech APIが「残り〇分です」「ゲームスタート」といったアナウンスを日本語音声で読み上げる。読み上げ速度をやや早口に設定して緊張感を出しており、地域イベントやチームビルディングの進行にそのまま使える。
トランプのスートを野菜4種に置き換えたクロンダイク(Windows標準のソリティア)。赤黒の代わりに「あか組(トマト・いちご)」と「みどり組(きゅうり・ブロッコリー)」を交互に重ねる。1枚/3枚めくりの切替、多段アンドゥ、オートコンプリートまで備えた本格版で、スマホ縦持ちで7列がきちんと収まる。
7種のミノにそれぞれ野菜キャラを割り当てた本格テトリス。I=きゅうり、O=たまご、T=トマト、S=アスパラ、Z=香辛子、J=ぶどう、L=みかんで、同じ形は必ず同じ野菜=色の代わりに野菜で見分ける。7-bag・ゴースト・ホールド・SRS壁蹴り・ロックディレイまで実装した、見た目だけ野菜の“ちゃんとしたテトリス”。
畑に隠れた「もぐら」を数字のヒントで避けながら、畑を全部掘り起こすマインスイーパ。地雷=もぐら、旗=かかしに置き換えた農業版。かんたん(9×9/10ぴき)・ふつう(12×12/25ひき)・むずかしい(16×16/45ひき)の3段階で、難易度ごとにベストタイムを記録する。
がんばり野菜のキャラカードをめくって同じ野菜のペアを揃える神経衰弱。かんたん(3×4)/ふつう(4×5)/むずかしい(4×6)の3段階で、ひとりモードはタイムとめくり回数を記録してベスト更新を狙える。交互にめくって取った枚数を競うふたり対戦モードもあり、職場や家族でそのまま遊べる。
がんばり野菜シリーズ初の3Dゲーム。畑の一本道を走り続ける前方視点エンドレスランナーで、スワイプでレーン移動・ジャンプ・スライディングして障害物(わらロール・かんばん・トラクター・カカシ・あな)をかわしながらたまごを集める。おひさまパワー(無敵)とたまごマグネットのパワーアップ付き。走った距離で昼→夕方→夜と景色が変わる。
🤖 AI4
自作の社内AIチャットbot(モック版)。調べ物や文章作成を手伝う汎用チャットに加え、規程・マニュアルを登録すると出典(○○規程 第○条)つきで答えてくれる規定検索モードを搭載。文書はスキャンPDF・Word・Excel・PowerPointに対応し、管理画面から登録するだけで自動で検索できるようになる。
株自動売買Botが実行した取引を人間が振り返るための可視化ダッシュボード(開発中)。立花証券APIから保有株と損益を取得してグラフ表示し、将来的にはLLMによる売買シグナル提案も組み込む構想。完全自律ではなく「AIが提案し人間が判断する」ヒューマン・イン・ザ・ループを前提に設計している。API制限やモデル選定など検討事項が多く、構成はまだ流動的。
立花証券のe-支店APIをPythonから叩いて株式の売買を自動化するBot。移動平均やRSIといったテクニカル指標をPandasで計算してシグナルを判定し、売買ルールの設定やポジション確認はStreamlitのUIで行う。実弾が動くためテスト/本番モードの切り替えと誤発注防止の二重確認、注文サイズ上限とストップロスを備え、認証情報は.envに隔離してローカルMacのみで動かしている。