سوا · Real-time bidirectional sign language communication — signs to text and speech to sign, supporting English (ASL) and Arabic (ArASL) alphabets. Built with FastAPI, MediaPipe, TensorFlow/Keras, and React.
# Sawa · سوا
### A Real-Time Bidirectional Sign Language Communication System
> **Sawa** (Arabic: *together*) — a communication bridge between deaf/mute users and hearing/speaking users that requires neither side to learn the other's language.
Built as an AI Capstone for the **Digital Egypt Pioneers Initiative** · eYouth · Ministry of Communications and Information Technology
---
## The Problem
Deaf and mute individuals face a persistent communication gap in everyday life — in hospitals, public transport, retail, and emergencies. Sign language interpreters are rarely available on demand, and most existing digital tools either ignore Arabic sign language entirely or require the non-signing party to already understand signs.
Sawa closes that gap in real time, in both directions, in both English and Arabic.
---
## What It Does
### 🔤 Sign to Text
Open your camera. Sign a letter. Hold it steady for under a second. Watch it appear in the live buffer — letter by letter, building into words and full sentences.
No word-level gesture recognition needed. Sawa uses a **letter buffer** with a hold-to-confirm streak mechanism: the model must predict the same letter for 10 consecutive frames before it commits to the buffer. A dedicated **space sign** marks word boundaries. A **DEL sign** removes the last character. The result is a robust, misread-resistant way to spell out anything the alphabet can express.
### 🔊 Speech to Sign
Speak, upload an audio file, or type manually. Sawa transcribes the speech locally (no external API), tokenizes the text letter by letter, fetches a reference hand-landmark vector for each letter, and renders it as an **animated 2D hand skeleton** — in English or Arabic — that the other person can follow at their own pace.
### 🌍 Two Languages. One Pipeline.
Both the English (ASL) and Arabic (ArASL) classifiers share the same Dense MLP architecture and MediaPipe landmark-extraction pipeline. Switching languages is instant — both models are loaded …