katekyo - Tutoring Management System
A web application for centralized management of tutors and students' learning progress.
Overview
- Role
- Planning / full-stack development
- Outcome
- Used in real tutoring work for progress, homework, and schedule management
- Status
- In use
Tech Stack
プロジェクト概要
家庭教師として複数の生徒を担当する中で感じた「指導時間外の学習状況が見えない」「成績推移やスケジュール管理が煩雑」といった課題を解決するために開発したWebアプリケーションです。
実際に自分の業務で日常的に運用しており、将来的なプラットフォーム化も視野に、複数の先生・生徒が利用できるマルチテナント型として設計しています。
主な特徴
日々の宿題管理、成績推移の可視化、カレンダーなどの基本機能に加えて、katekyo独自の学習の森という機能を実装しています。
これは、宿題の提出率や小テスト・模試の成績をもとに、生徒の成長記録を森のビジュアルで表現する機能です。
生徒は自分の成長を視覚的に実感でき、先生も指導の成果を実感しやすくなります。

具体的には、生徒が宿題を提出すると木が成長し、模試や定期テストの成績が上がると花が咲く形で、学習の進捗を視覚化しています。
また、宿題を提出していなかったり、成績が落ちてしまった場合は、「木が枯れる」「花が散る」といった視覚的演出も組み込んでいます。
実際の運用では、生徒から「森が成長していくのが楽しい」「レアな植物をゲットするために、頑張っている」といった声もあり、モチベーション維持に一役買っています。
学習の森のほかには、LINE Message APIを活用した通知機能も実装しており、宿題の提出期限が近づいたときや、模試の成績が更新されたときなどに、生徒と先生双方に自動でリマインドが届くようになっています。
苦労した点・工夫した点
勉強アプリにゲーム性をどこまで持たせるか
学習の森では、生徒が成長を実感し、モチベーションを維持できるゲーム的な要素をどこまで入れるかが設計上のテーマでした。
最初は「宿題提出率に応じて木が増える」というシンプルな設計でした。運用を始めると、「植物の種類を増やしてほしい」「模試の成績も反映させたい」といった声があり、機能を拡充しました。
最終的には、宿題の提出だけでなく、模試や定期テストの成績も反映させることで、より多角的に学習の進捗を表現できるようになりました。
ただし、ゲーム的な要素を増やしすぎると、勉強アプリとしての目的がぼやけます。
そこで、生徒側の入力を「宿題を提出したか」「模試の成績がどうだったか」といった学習データに限定するという制約を置きました。
たとえば「木に水をやる」「花に肥料をあげる」「ポイントで植物を植える」といった操作を増やせば、ゲームとしては楽しくなります。しかし、それでは勉強アプリとしての本質から離れてしまうと考えました。
生徒が森を育てるのではなく勉強が森を育てる。
その主語の違いが、このアプリのゲーム性の設計思想です。
今後の改善点と展望
現在は自分の家庭教師業務で運用していますが、今後は他の先生や生徒も利用できるマルチテナント型のSaaSとして展開することも視野に入れています。
そのため、データベース管理を Supabase から、より柔軟にスケールできる AWS や GCP へ移行することも検討しています。