TECH & STATS

技術スタックと統計

「速そうだから」ではなく、測ってから採用する。数字はすべて Git 履歴の実測値です(2026年7月26日時点)。

数字で見る UX Labs

53
管理下リポジトリ
8,032
総コミット数
7,619
Git 管理下ファイル数
561
設計・進捗ドキュメント

月別コミット数

36
25-09
76
25-10
22
25-11
37
25-12
256
26-01
431
26-02
366
26-03
483
26-04
652
26-05
3,197
26-06
2,357
26-07
// 本人(HariBote1110)によるコミット。2026-07 は26日時点。直近2ヶ月に全体の約7割が集中。

コミット数上位プロジェクト

#プロジェクトコミット規模(行)
1UX Film Director2,972227,996
2UX TTS1,232153,673
3UX Music918112,719
4TitaniumMC47535,601
5UX Nova45738,929
6HariBotes-playground23340,289
7VOICEVOX-Research19620,972

言語構成

Git 管理下のソースファイル数。用途に応じて言語を使い分けています。

言語ファイル数主な用途
TypeScript1,245Discord Bot、Web UI、サーバー、Electron アプリ
JavaScript951Electron、Discord.js、Minecraft Script API アドオン
Java501Minecraft Mod(Fabric / Forge)、Paper プラグイン、Android TV
Python493機械学習、音声合成研究、画像生成、モデル変換
Go384ネイティブ GUI、常駐サービス、DB レイヤー、エージェント
Swift177macOS / iOS / watchOS ネイティブ、Core ML 推論
Rust176動画レンダリング、WebGPU、高性能コア

フレームワーク・ランタイム

領域採用技術
デスクトップ GUIWails(Go + Web)、Electron、Tauri、Pure Rust(wgpu + egui)、SwiftUI
Web / フロントReact、Next.js(App Router)、Vite、react-three-fiber、Three.js
DiscordDiscord.js v14(シャーディング対応)
サーバーNode.js(Express / Fastify)、Go(Echo)
データベースPostgreSQL + Drizzle ORM、SQLite、QuestDB(時系列)、Redis
音声合成VOICEVOX、AivisSpeech、OpenJTalk
機械学習PyTorch、Core ML / Apple Neural Engine、ONNX、OpenVINO、llama.cpp
グラフィックスWebGPU / wgpu、Metal、WGSL
MinecraftFabric、Forge、Paper / Spigot、Bedrock Script API、Geyser
インフラDocker Compose、Cloudflare Tunnel、Tailscale、systemd
モノレポ / ビルドpnpm workspaces、Turborepo、Gradle、Cargo、Make
テストVitest、go test、Rust test、JUnit、Minecraft Game Test

技術選定の傾向

Go への継続的な移行

DB 層、サイドカー、常駐エージェントなどが Go へ。堅牢な常駐プロセス基盤としての位置づけ。

Rust の台頭

2026年に入って動画レンダリングコアや MOD マネージャーが Rust 化。GPU と実時間処理が絡む領域は Rust + WebGPU へ。

Web エンジンからの脱却

Electron の重さを避けて Wails へ、さらに Stargrace Framework(Go から SwiftUI を宣言的に駆動)へ。「WebView を一切使わない」を目標に掲げる基盤開発が進行中。

Apple Neural Engine の活用

Windows/CUDA で学習 → Mac の ANE で推論、というエッジ推論パイプラインを言語モデル・画像生成・音源分離で繰り返し採用。

6 レイヤーで動く UX TTS

「文字を音声にして読み上げる」という単機能に見えて、実態は役割ごとにプロセスを分けた分散システム。合成エンジンが重い、複数台の PC に分散したい、落ちても部分復旧したい——という運用要求から、この形に行き着いています。

音声生成の縦の流れ
Discord ユーザーが発言
Layer-A
Bot 本体
発言受信・整形・VC 接続・再生
HTTP
Layer-B
キャッシュ
過去に作った音声があれば即返す
miss 時のみ
Layer-C
TTS Worker
VOICEVOX / AivisSpeech を叩く(別 PC のことも)
横から支える別系統
Layer-D
Database(Go)
ギルド設定・辞書・利用量
Layer-E
User Dashboard
利用者向け Web 設定画面
Layer-F
Ops Console
運用者向け監視・操作
+ Flow-Relay(観測中継)
+ AndroidTV-Dashboard(常時表示)
+ Deploy-Agent(自動デプロイ)

片方が落ちても、もう片方が生き残る。状態と処理を分離した設計です。