Files
BeMyEars/README.md
jared d29b8182ca Initial commit
Add iOS app with Node.js/TypeScript backend for BeMyEars project.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 21:51:47 -05:00

58 lines
2.5 KiB
Markdown

# BeMyEars 👂
**BeMyEars** is a real-time video communication platform designed to bridge the gap between **Deaf/Hard of Hearing (HoH)** individuals and **Sign Language Interpreters**.
The application provides a seamless, one-to-one video chat experience, allowing Deaf users to instantly request assistance for daily tasks, conversations, or minor emergencies, and enabling Interpreters to provide remote support.
---
## 👥 User Roles & Experience
### For Deaf / Hard of Hearing Users
* **Purpose**: Get on-demand access to a visual interpreter.
* **What to Expect**:
* **Dashboard**: A clear list of currently available (online) Interpreters.
* **One-Tap Calling**: Simply tap an Interpreter's name to initiate a video call.
* **High-Quality Video**: Optimized video connection (up to 1080p) to ensure sign language and facial expressions are clearly visible.
### For Interpreters
* **Purpose**: Offer remote visual assistance and interpretation services.
* **What to Expect**:
* **Standby Mode**: Login and toggle your status between "Online" and "Offline".
* **Incoming Call Alerts**: Full-screen notification when a user needs assistance.
* **Two-Way Audio/Video**: Use your voice to translate for the Deaf user while signing back to them via video.
* **Abuse Reporting**: Report inappropriate behavior immediately after a call.
---
## 🚀 Key Features
* **Real-Time WebRTC Video**: Low-latency peer-to-peer video streaming.
* **Bifunctional Login**: Single app supports both User and Interpreter workflows.
* **Presence System**: Interpreters control their availability; Deaf users see live counts.
* **Video Visibility**: Notifications confirm when video renders on the peer's device.
* **Privacy First**: Direct device-to-device connection.
---
## 🛠 Technical Overview
This project serves as a proof-of-concept for a modern IOS video chat application.
* **iOS Client**: Built with **SwiftUI** and **WebRTC**.
* **Backend**: Node.js + WebSocket signaling server.
* **Connectivity**: STUN/TURN support (ICE) for traversing NATs.
* **Optimization**: Custom video adaptation ("Feed the Beast" strategy) for iPad Pro compatibility.
## 📦 Setup & Build
1. **Install dependencies**:
```bash
cd BeMyEars
pod install
```
2. **Open Workspace**:
**CRITICAL**: You must open `BeMyEars.xcworkspace`, NOT `BeMyEars.xcodeproj`.
```bash
open BeMyEars.xcworkspace
```
3. **Build**: Select your target device and run (Cmd+R).