ココトバ

Gemini APINext.jsDockerGoGORM
大津愛莉奥村直桑野碧彩陣内勇冴籔下悟琉

受賞歴

- 金賞 3大学合同ハッカソン

ココトバ

アプリ概要

言語障がいや吃音など、発話機能の発達の違いによって「自分の意思を言葉で伝えること」に困難を抱えている方々がいます。 ​

私たちは今回、そうした方々がお店や病院などの社会生活において、よりスムーズに、そして心理的ストレスなくコミュニケーションをとるための補助代替コミュニケーション(AAC)アプリを開発しました。 今回私たちが開発したのは、スマートフォンの位置情報(GPS)を活用したWebアプリケーションです。

​最大の強みは「ユーザーの現在地に合わせて、最適な単語カードを自動で提案する」という点です。 例えば、現在地が「コンビニ」であれば、「袋」「温める」「おにぎり」といったその場所で最も使われる語彙だけが画面に展開されます。「病院」であれば「痛い」「ここが」といった言葉が優先されます。 ​

ユーザーは表示されたカードをタップするだけで、ブラウザ標準の音声合成機能(Web Speech API)が即座に言葉を読み上げます。

さらに、AIを活用して「⭕️温めてください」「温めないでください」といった肯定・否定の候補を同時に出力することで、単語を組み立てる認知負荷を極限まで下げました。

きっかけ

このプロダクトが生まれた背景には、開発メンバーのひとりの「家族」の存在があります。

​その家族は発話に困難を抱えており、身内との間ではオリジナルのボディランゲージを使って、とても豊かにコミュニケーションをとっています。その表現は個性的で自由であり、決して否定されるべきものではありません。

​しかし、一歩「社会」に出ると状況は変わります。コンビニのレジやカフェの注文でそのボディランゲージは通用せず、意思を伝えることができません。

​既存のコミュニケーション支援アプリやフラッシュカードも試しましたが、それらは何千ものカードから必要な言葉を「探す」必要がありました。レジ前で言葉を探す数秒間は、後ろに長蛇の列を作るプレッシャーとなり、時には店員さんから冷たい対応をされることもあります。この「即答性がないことによる焦り」が、当事者にとって大きな心理的ストレスとなり、「外食をする」「買い物に行く」という社会参加のハードルそのものを高くしていました。

​マイノリティが、健常者を基準に作られた社会に一方的に合わせるのではなく、双方が心地よくやり取りできる「交点」を作ることはできないか。

​その答えとしてたどり着いたのが、探す時間をゼロにする「場所連動」というアイデアと、相手に待つ姿勢を促す「音声アプリで会話します、少しお待ちください」というSOSボタンの設置でした。

主要機能

  • 現在地(GPS)取得して、近くのロケーションを提示・判定する
  • ロケーション(例: コンビニ/病院/カフェ)に紐づくボードを表示し、カードを選んでコミュニケーションする
  • 選択したカード(単語)の読み上げ(音声発話)
  • AIによる文章補完 / 推薦

使用技術

フロントエンド

  • Next.js (App Router/TypeScript)
  • LiftKit (UIライブラリ)
  • Geolocation API(現在地取得)
  • Web Speech API(発話)

バックエンド

  • Go / Gin(Web API)
  • JWT認証

データベース

  • MySQL

ストレージ

  • Supabase Storage

AI機能

  • Gemini 2.5 Flash API

工夫点

フロントエンド

  • 心地よい使用感: 黄金比に基づいたデザインシステムLiftKitを使用し、プロポーションを統一
  • 爆速デザイン実装: Stitch MCPを用いて、デザインからその実装までをAIエージェントで※Stitch:Google提供のUI生成AIツール

バックエンド

  • コンテナ運用の最適化: Dockerマルチステージビルドの活用ビルド環境と実行環境を分けることで、イメージサイズを最小化。 ​不要なソースコードやツールを含めないことで、軽量化とセキュリティ向上を同時に実現。
  • アーキテクチャと開発効率: Go言語によるAPIサーバー構築 ​高速な処理性能を持つGoを採用。 ​フロントエンドとバックエンドの完全分離 ​役割を明確に分けることで、並行作業をスムーズにし、作業分解(タスク割り振り)の容易性を向上。 ​
  • プロジェクト管理とデプロイの統合: Gitサブモジュールの活用 ​複数のリポジトリを連携させ、プロジェクト全体を一括管理。 ​統合的なIssue駆動開発(タスク管理との紐付け)と、デプロイ作業の簡略化を両立。

今後の展望

​現在のMVP(実用最小限の製品)から、今後は以下の機能拡張と社会実装を目指しています。

​店舗とのQRコード・NFC連携

屋内ではGPSの精度が落ちる課題を解決するため、協力店舗のレジ前にQRコードやNFCタグを設置。読み込むだけで瞬時にそのお店専用のボードが開く仕組みを作ります。これは店舗側にとってもレジの回転率向上というメリットに繋がります。

​スマートウォッチ連携(バイタルデータの活用)

パニックになってアプリすら開けない状況を防ぐため、スマートウォッチの心拍数上昇などから「焦り」を検知し、自動で「助けてください」「少し待ってください」といった緊急ボードを展開する機能を構想しています。

アプリケーションとしての正式リリース

Webアプリ(PWA)やネイティブアプリとしてブラッシュアップを重ね、実際に当事者の方々に日常的に使っていただける形でのリリースを目指します。

終わりに

世の中には本当に様々な個性を持つ人がいて、たった一つのアプリで全員を完全に平等にするような「魔法」はありません。けれど、技術の力で『外に出て会話したい』『社会と関わりたい』という挑戦のハードルを下げることは絶対にできます。 ​

私たちはその可能性を信じ、誰もが社会との繋がりを諦めない未来に向けて、これからも開発を続けていきます。