結(ゆい)― スタッフ向け 申し送り・ゲストカルテ

https://github.com/otonasi-muonn/tubasa-rizoto

Next.js

TypeScript

React

Node.js

TailwindCSS

旅館・ホテルの部門間申し送り&ゲストカルテ共有アプリ

無音

推しアイデア

フロント・レストラン・清掃部門間の連絡漏れを防ぐ、旅館スタッフ向け申し送りアプリです。個人情報保護のためゲストは「客室名」で識別します。他端末からの申し送りは即時に未読バッジで通知され、アレルギーや記念日などの重要情報は自動で強調表示されるため、現場の確認ミスを防止できます。

作った背景

旅館では紙のメモや口頭での引き継ぎが多く、アレルギーなどの伝達漏れが課題でした。既存システムは個人情報管理のハードルが高いため、翼リゾートでも安全に導入できるよう、ゲストの氏名等の個人情報を保持しないシンプルな設計の申し送りツールを企画しました。

推し技術

Next.js 14とTypeScriptを採用しました。バックエンド通信を行わず、BroadcastChannel APIとlocalStorageを用いて複数タブ間のリアルタイム同期を実装しています。将来的にWebSocket等へ容易に移行できるよう、同期層を分離して設計しま

プロジェクト詳細

「結(ゆい)」は、旅館の現場3部門(フロント・レストラン・客室清掃)および管理者(支配人)の間で、お客様への特別な配慮事項(アレルギーや記念日など)をリアルタイムに共有するためのスタッフ専用システムです。

【作った背景と課題の深掘り】 旅館運営会社「翼リゾート」の宿泊客と社員双方の口コミを実際に調査することから始めました。

予約サイトの口コミを幅広く集めたところ、スタッフの接客自体は高く評価されている一方で、「同じことを二度聞かれた」「記念日の対応が抜けていた」「アレルギーが伝わっていなかった」という、部門間の連携ミスをうかがわせる不満が共通して見つかりました。

なぜ連携ミスが起きるのか運営体制まで掘り下げると、この会社は「マニュアルを意図的に設けず、スタッフ一人ひとりの自由なおもてなしを尊重している」ことが分かりました。それは強みである反面、部門間の引き継ぎに決まった型がないということでもあります。フロントが聞いたお客様の情報は、1枚しかない紙のメモと口頭でレストランや清掃へ渡される。「言った気がする」が聞き直しと抜けを生んでいました。社員の口コミからは現場が慢性的に手一杯であることも分かり、精神論ではなく仕組みで伝達を支える必要があると考えました。

【設計のこだわり:アナログを否定しない】 一方で、既存の業務システムは個人情報管理のハードルが高く、専門の担当者がいない地方の中小旅館には導入が重すぎます。 そこで「お客様の氏名を持たず、客室名で識別する」という割り切りで安全性と手軽さを両立させました。さらに、翼リゾートの強みである手書きのおもてなしは否定せず、デジタル化する対象を「お客様から見えない裏方の引き継ぎ」だけに絞り、生まれた時間をお客様と向き合う時間に充てる——そうした考えのもと、現場のスタッフが本当に使えるツールとして企画しています。

ITが苦手なスタッフでも「新しく覚えること」を最小限にするため、以下の機能を実装しました。

  • 確実な伝達: 他部門から申し送りが追加されると即座に「未読あり」で通知し、カルテを開くと自動で既読化。
  • 運用に合わせた自動化: チェックイン日と滞在日数から「予定/在館/退館」を自動算出。
  • ミス防止: 引き継ぎ記録の信頼性を保つため申し送りは「追記専用(送信後5秒間は取り消し可)」とし、アレルギー等の重要語は自動で強調表示。
  • 現場向けUI: タップ目標サイズを44pxに拡大。よく使う文言はワンタップで入力できる補助ボタンを用意。

【現在の状況】 現在は技術構成を協議するためのモックアップ段階です。バックエンド通信は行わず、BroadcastChannel APIlocalStorageを用いて、複数タブ間のリアルタイム同期を擬似的に実装しています。

本モックには、1台の端末で4ロールの1日の業務サイクルを10ステップで順に体験できる「ユーザーフローテスト機能」を搭載しており、実際の運用イメージを画面上で確認していただけます。

無音

@muon