中の人が開発しているソフトウェアを紹介します。
岡山バス位置情報NEXT
岡山バス位置情報をNext.jsでリビルドしたものです。両備バスに加え、岡電バス、八晃運輸の運行状況表示に対応しました。
TypeScriptの導入により、意図しないエラーの発生が抑制できるようになりました。また、フロントエンドとバックエンドが統合されたため、バックエンドサーバとの通信時間短縮及びパフォーマンスの向上、フロントエンドとバックエンドでのデータ構造共有を実現しています。
| 技術スタック | フレームワーク等 |
|---|---|
| フロントエンド | Next.js (App Router) |
| バックエンド | Next.js (App Router) |
| 外部データ | Bus-Visionオープンデータ |
| ホスティング | Vercel |

岡山バス位置情報
両備バスのバス運行状況を一覧で確認するシステムです。Bus-Visionには、1台ずつ位置情報を確認する機能がありますが、一覧で確認する機能が無かったため作成しました。React.jsの勉強のために、初めてのWebアプリ開発にチャレンジしたものになります。
岡山バス位置情報NEXTの完成に伴い、移転しました。将来的にアクセスできなくなる予定です。
| 技術スタック | フレームワーク等 |
|---|---|
| フロントエンド | React.js |
| バックエンド | Express |
| 外部データ | Bus-Visionオープンデータ |
| ホスティング | Vercel |

楽天ブックス在庫チェッカー
楽天ブックスにおけるNintendo Switch 2の突発販売に勝つために作成したシステムです。 楽天市場のお気に入り機能でも在庫情報を一覧表示で確認することができますが、在庫情報の連携が遅いため争奪戦には勝つことができません。そこで在庫情報を一覧表示でリアルタイムに確認できるシステムを作成しました。サーバ側の固定の商品IDで検索する方式と、クライアント側で商品IDをカンマ区切りで入力して必要なものだけを検索する方式があります。
| 技術スタック | フレームワーク等 |
|---|---|
| フロントエンド | Next.js (App Router) |
| バックエンド | Next.js (App Router) |
| 外部データ | 楽天ブックス在庫情報取得API |
| ホスティング | Vercel |


PhotoBlog
オンライン上でフォトブックを無料で作成・閲覧できるシステムが欲しいと思い、作成しています。現在、認証基盤とCMSからコンテンツを取得してくる処理のみ実装しているため、PhotoBlogからCMSに対して新規コンテンツを追加する処理とフロントエンドの見た目を改善する予定です。
| 技術スタック | フレームワーク等 |
|---|---|
| フロントエンド | Next.js (App Router) |
| バックエンド | Next.js (App Router) |
| ヘッドレスCMS | microCMS |
| 認証基盤 | Google OAuth 2.0 |
| ホスティング | Vercel |


おしゃべりWeb
AIとRVCを用いてなにか作れないかと考えたとき、キャラクターとチャットできるアプリが思い浮かんだので、作成しました。 LINE風のチャットUIにDiscord風の入力中UIを合わせています。また、RVCを用いることで、チャット相手からの返信はボイスメッセージとしても再生できるようになっています。 音声再生のUIについては、将来見た目を改善する予定です。
| 技術スタック | フレームワーク等 |
|---|---|
| フロントエンド | Next.js (Pages Router) |
| バックエンド | FastAPI |
| データベース | SQLite |
| LLM | Ollama |
| RVC | rvc-tts-webui |


WakeOnLAN App
インターネット経由で自宅内のデバイスの電源を入れたいとき、Wake On LANのマジックパケットがVPN経由では簡単に送信できないという問題があります。 そこで、本システムを自宅内のサーバでホスティングさせて、VPN経由で利用するために作成しました。
| 技術スタック | フレームワーク等 |
|---|---|
| フロントエンド | Next.js (Pages Router) |
| バックエンド | Next.js (Pages Router) |
| 端末管理 | jsonデータ |
| ホスティング | PM2 |

UnicardSync
クレジットカード会社は、各月の明細CSVをエクスポートできるようにしてくれています。 しかしCSVのレイアウトは各社異なっているため、帳簿を付けるにもレイアウトの差を気にしながら行う必要があり、地味に面倒くさい作業です。
このツールは、下記に示される所定レイアウトのCSVファイルをconfigフォルダ内に配置することで、CSV読み込み処理をコントロールすることができ、各社のレイアウトを統一されたレイアウトで取り込むことができます。8項目を指定するだけなので、利用者が必要に応じてconfigのファイルを追加することができるのがポイントです。
amazon.dat
torikomi_type ,encoding ,skip_top_rows,skip_bottom_rows,place_used,amount_used,date_used,note
Amazon Mastercard,Shift_JIS,1 ,1 ,1 ,2 ,0 ,-1
rakuten.dat
torikomi_type,encoding,skip_top_rows,skip_bottom_rows,place_used,amount_used,date_used,note
楽天カード ,UTF-8 ,1 ,0 ,1 ,4 ,0 ,-1
| 技術スタック | フレームワーク等 |
|---|---|
| アプリケーション | .NET Framework 4.8 (C#) |
| データベース | SQLite |
| 外部データ | クレジットカード会社の明細CSV、UnicardSync形式CSV |

MyCrane
自分でクレーンゲームの設定を作りたい!遊びたい!を形にするために始動したプロジェクトです。コロナ渦でゲームセンターにも気軽に行けない時代に家でできたらいいなと思い、開発しました。 当初はオブジェクト指向のことを意識せずに作っておりプログラムが散らばった状態になっていましたが、オブジェクト指向を実践することでプログラムの構造が整理されることを実感したプロジェクトです。
| 技術スタック | フレームワーク等 |
|---|---|
| ゲームエンジン | Unity 2022.2.18f1 (C#) |
| 公式サイトのホスティング | Google Sites |
MyMedal
時代の変遷に連れて消えていく過去のメダルゲーム機を再現することを目標としたプロジェクトです。開発にまとまった時間が必要なのであまり進んでいませんが、いつかは完成させたいものの1つです。
| 技術スタック | フレームワーク等 |
|---|---|
| ゲームエンジン | Unity 2022.2.18f1 (C#) |

BusSimulator
OMSI2にインスパイアされて、作成を決断しました。 OMSI2には日本マップのMODがありますが、ゲーム自体はドイツのAerosoft社が発売しているため、日本のバス事情をMODで再現するのが難しいというところがあります。
ネイティブな日本バスシムを目指して開発を進めています。自動運転車両のプログラミングに難儀しており、開発が中々進んでいません。
| 技術スタック | フレームワーク等 |
|---|---|
| ゲームエンジン | Unity 2021.3.36f1 (C#) |

LinearGame
当時スイカゲームが流行っていたので、作ってみました。スイカゲームのように進化していきますが、スイカゲームと違って車両同士が反発しやすい設定になっています。 そのため、うまく合体させるにはスイカゲームとは別のコツが必要になっています。
| 技術スタック | フレームワーク等 |
|---|---|
| ゲームエンジン | Unity 2022.2.18f1 (C#) |
| ホスティング | unityroom |

WavSMPLPlayer
音楽の特定のパートのみが好きで、繰り返して聴きたいというニーズがあると思います。ABループ機能で解決できる問題ではありますが、綺麗にループさせるのは難しいです。 wavファイルは、SMPLチャンクでのループポイント設定に対応しており、このツールはSMPLチャンクで設定されたループポイントに従ってループ再生することができます。
| 技術スタック | フレームワーク等 |
|---|---|
| ゲームエンジン | Unity 2022.2.18f1 (C#) |

MyXeno
Xenoは、中田敦彦さんがラブレターを元に考案したカードゲームです。 トランプほど単純なゲームルールではないため、カードゲームのロジックを実装するにはどうしたらいいか?を試行錯誤する練習に作成しました。
| 技術スタック | フレームワーク等 |
|---|---|
| ゲームエンジン | Unity 2020.3.20f1 (C#) |

埴輪転生
電算研UnionHack-2021-に参加した際、お題「輪」をテーマとして作成したゲームです。
クレジット
- ゲームシナリオ:いょむ
- 実装:中の人、kyou
- 音楽:中の人
- キャライラスト:だるお(@DaruoUni)
| 技術スタック | フレームワーク等 |
|---|---|
| ゲームエンジン | Unity 2020.3.20f1 (C#) |
| ホスティング | unityroom |

MinecraftServerMonitorGAS
自宅サーバで運営しているMinecraftサーバの死活チェックと接続情報公開のために作成したシステムです。
| 技術スタック | フレームワーク等 |
|---|---|
| フロントエンド | HTML/CSS/JavaScript |
| バックエンド | Google Apps Script |
| ホスティング | Google Sites |

minecraft-server-tools
cronとscreenを使用して、Minecraftサーバプロセスの自動起動・自動終了などを行います。
先述のMinecraftServerMonitorGASへの状態通知、DiscordへのWebHook通知も行います。
| 技術スタック | フレームワーク等 |
|---|---|
| バッチ | シェルスクリプト |

本ブログ
Markdownドキュメント形式でブログを執筆したかったため、Hugoを採用しました。
| 技術スタック | フレームワーク等 |
|---|---|
| 静的サイトジェネレーター | Hugo |
| テーマ | hugo-theme-reimu |
| ホスティング | netlify |



