Skip to content

TanujaSuryawanshi/Sign-Language-Learner-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

7 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Sign Language Learner App ๐Ÿ“ฑโœ‹๐Ÿ’ฌ

Sign Language Learner Flutter Firebase TensorFlow License

An interactive AI-powered mobile app to learn and practice sign language using speech, text, and gesture recognition

Demo โ€ข Features โ€ข Installation โ€ข Usage โ€ข Contributing


๐ŸŽฏ Overview

Sign Language Learner App is a cutting-edge educational mobile application designed to make sign language learning accessible, engaging, and effective for everyone. Using advanced AI and machine learning technologies, the app provides personalized learning experiences through gesture recognition, interactive lessons, and gamified challenges.

๐ŸŒŸ Why Choose Our App?

  • ๐ŸŽฎ Gamified Learning: Interactive quizzes, challenges, and progress tracking
  • ๐Ÿค– AI-Powered Feedback: Real-time gesture analysis and personalized suggestions
  • ๐Ÿ“ฑ Mobile-First Design: Optimized for smartphones and tablets
  • ๐ŸŒ Offline Capability: Learn anytime, anywhere without internet
  • ๐Ÿ‘ฅ Community-Driven: Built with input from the deaf and hard-of-hearing community
  • ๐ŸŽ“ Curriculum-Based: Structured learning path from beginner to advanced

โœจ Core Features

๐Ÿค Advanced Gesture Recognition

  • Real-time Detection: Uses MediaPipe and TensorFlow Lite for accurate hand tracking
  • Gesture Evaluation: AI-powered feedback on gesture accuracy and form
  • Multiple Angles: Recognizes gestures from different camera positions
  • Adaptive Learning: Improves recognition based on user's signing style

๐Ÿ—ฃ๏ธ Speech & Text Integration

  • Bidirectional Learning: Practice both sign-to-speech and speech-to-sign
  • Natural Language Processing: Understands context and sentence structure
  • Voice Synthesis: High-quality text-to-speech with multiple voice options
  • Multilingual Support: Learn sign language in your preferred spoken language

๐ŸŽฎ Gamified Learning Experience

  • Progress Tracking: Visual progress bars and achievement system
  • Daily Challenges: Keep users engaged with daily learning goals
  • Streak System: Reward consistent practice with streak counters
  • Leaderboards: Compete with friends and global learners
  • Badges & Rewards: Unlock achievements for milestones and skills

๐Ÿค– AI Learning Companion

  • Interactive Chatbot: Practice conversations in real-world scenarios
  • Personalized Feedback: Tailored suggestions based on learning patterns
  • Adaptive Difficulty: Automatically adjusts lesson complexity
  • Learning Analytics: Track strengths and areas for improvement

๐Ÿ“š Comprehensive Curriculum

  • Structured Lessons: Beginner to advanced learning paths
  • Topic Categories: Everyday conversations, professional terms, emotional expressions
  • Cultural Context: Learn about deaf culture and community
  • Regional Variations: Support for different sign language dialects

๐Ÿ”„ Offline Capabilities

  • Download Lessons: Access content without internet connection
  • Local Model Processing: On-device AI for privacy and speed
  • Sync Progress: Automatically sync when connected to internet
  • Reduced Data Usage: Optimized for mobile data plans

๐Ÿ—๏ธ Technical Architecture

Tech Stack

Component Technology Purpose
Mobile Framework Flutter (Dart) Cross-platform mobile development
Backend Services Firebase Authentication, database, cloud functions
Machine Learning TensorFlow Lite On-device gesture recognition
Computer Vision MediaPipe Hand tracking and pose detection
Local Database SQLite/Hive Offline data storage
State Management Riverpod/Provider App state and data flow
Animation Rive/Lottie Interactive animations and feedback
Speech APIs Google Speech/Azure STT and TTS capabilities

App Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                    Presentation Layer                       โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”           โ”‚
โ”‚  โ”‚   Screens   โ”‚ โ”‚   Widgets   โ”‚ โ”‚ Animations  โ”‚           โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜           โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                  โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                   Business Logic Layer                      โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”           โ”‚
โ”‚  โ”‚ Controllers โ”‚ โ”‚   Services  โ”‚ โ”‚ Repositoriesโ”‚           โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜           โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                  โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                     Data Layer                              โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”           โ”‚
โ”‚  โ”‚  Firebase   โ”‚ โ”‚Local Databaseโ”‚ โ”‚ ML Models  โ”‚           โ”‚
โ”‚  โ”‚   (Cloud)   โ”‚ โ”‚ (SQLite)    โ”‚ โ”‚(TF Lite)   โ”‚           โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜           โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐Ÿ“ Project Structure

SignLanguageLearner/
โ”œโ”€โ”€ ๐Ÿ“ฑ lib/
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ core/
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ constants.dart         # App-wide constants
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ theme.dart            # App theming and styles
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ utils.dart            # Utility functions
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ data/
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ models/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ user.dart         # User data model
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ lesson.dart       # Lesson structure
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ progress.dart     # Progress tracking
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ repositories/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ user_repository.dart
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ lesson_repository.dart
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ progress_repository.dart
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“ datasources/
โ”‚   โ”‚       โ”œโ”€โ”€ ๐Ÿ“„ firebase_datasource.dart
โ”‚   โ”‚       โ””โ”€โ”€ ๐Ÿ“„ local_datasource.dart
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ domain/
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ entities/
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ repositories/
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“ usecases/
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ presentation/
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ screens/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ auth/
โ”‚   โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ login_screen.dart
โ”‚   โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ signup_screen.dart
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ home/
โ”‚   โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ home_screen.dart
โ”‚   โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ dashboard_screen.dart
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ learning/
โ”‚   โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ lesson_screen.dart
โ”‚   โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ practice_screen.dart
โ”‚   โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ quiz_screen.dart
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ profile/
โ”‚   โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ profile_screen.dart
โ”‚   โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ progress_screen.dart
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“ camera/
โ”‚   โ”‚   โ”‚       โ””โ”€โ”€ ๐Ÿ“„ gesture_camera_screen.dart
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ widgets/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ common/
โ”‚   โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ custom_button.dart
โ”‚   โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ progress_bar.dart
โ”‚   โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ loading_indicator.dart
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ lesson/
โ”‚   โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ lesson_card.dart
โ”‚   โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ gesture_display.dart
โ”‚   โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ feedback_widget.dart
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“ camera/
โ”‚   โ”‚   โ”‚       โ”œโ”€โ”€ ๐Ÿ“„ camera_preview.dart
โ”‚   โ”‚   โ”‚       โ””โ”€โ”€ ๐Ÿ“„ gesture_overlay.dart
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“ controllers/
โ”‚   โ”‚       โ”œโ”€โ”€ ๐Ÿ“„ auth_controller.dart
โ”‚   โ”‚       โ”œโ”€โ”€ ๐Ÿ“„ lesson_controller.dart
โ”‚   โ”‚       โ””โ”€โ”€ ๐Ÿ“„ camera_controller.dart
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ services/
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ firebase_service.dart    # Firebase integration
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ ml_service.dart         # Machine learning service
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ camera_service.dart     # Camera handling
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ speech_service.dart     # STT/TTS integration
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ notification_service.dart
โ”‚   โ””โ”€โ”€ ๐Ÿ“„ main.dart                   # App entry point
โ”œโ”€โ”€ ๐Ÿ“ assets/
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ images/
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ gestures/               # Sign language reference images
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ avatars/               # User avatars and characters
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“ icons/                 # Custom app icons
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ animations/
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ rive/                  # Rive animation files
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“ lottie/               # Lottie animation files
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ audio/
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ sounds/               # UI sound effects
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“ pronunciations/       # Word pronunciations
โ”‚   โ””โ”€โ”€ ๐Ÿ“ fonts/                    # Custom fonts
โ”œโ”€โ”€ ๐Ÿ“ ml_models/
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ gesture_classifier.tflite  # Trained gesture model
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ hand_landmark.tflite      # MediaPipe hand model
โ”‚   โ””โ”€โ”€ ๐Ÿ“„ model_metadata.json       # Model information
โ”œโ”€โ”€ ๐Ÿ“ test/
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ unit/                     # Unit tests
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ widget/                   # Widget tests
โ”‚   โ””โ”€โ”€ ๐Ÿ“ integration/              # Integration tests
โ”œโ”€โ”€ ๐Ÿ“ docs/
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ API.md                    # API documentation
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ ARCHITECTURE.md           # Architecture guide
โ”‚   โ””โ”€โ”€ ๐Ÿ“„ USER_GUIDE.md            # User manual
โ”œโ”€โ”€ ๐Ÿ“„ pubspec.yaml                  # Flutter dependencies
โ”œโ”€โ”€ ๐Ÿ“„ analysis_options.yaml         # Code analysis rules
โ”œโ”€โ”€ ๐Ÿ“„ firebase.json                 # Firebase configuration
โ””โ”€โ”€ ๐Ÿ“„ README.md                     # This file

๐Ÿš€ Installation & Setup

Prerequisites

  • Flutter SDK 3.0 or higher
  • Dart SDK 2.17 or higher
  • Android Studio / VS Code with Flutter extensions
  • Firebase Account for backend services
  • Physical Device or Emulator with camera support

Quick Start

1๏ธโƒฃ Clone the Repository

git clone https://github.com/yourusername/SignLanguageLearner.git
cd SignLanguageLearner

2๏ธโƒฃ Install Flutter Dependencies

# Get all packages
flutter pub get

# Verify Flutter installation
flutter doctor

3๏ธโƒฃ Firebase Setup

# Install Firebase CLI
npm install -g firebase-tools

# Login to Firebase
firebase login

# Install FlutterFire CLI
dart pub global activate flutterfire_cli

# Configure Firebase for your project
flutterfire configure

4๏ธโƒฃ Environment Configuration

# Copy environment template
cp lib/core/env_template.dart lib/core/env.dart

# Edit env.dart with your API keys and configuration

5๏ธโƒฃ Download ML Models

# Download pre-trained models
flutter pub run build_runner build

# Or manually download models to ml_models/ directory

6๏ธโƒฃ Run the Application

# Debug mode
flutter run

# Release mode
flutter run --release

# Specific device
flutter run -d <device_id>

Platform-Specific Setup

Android

# android/app/build.gradle
android {
    compileSdkVersion 33
    minSdkVersion 21
    targetSdkVersion 33
}

# Add permissions in android/app/src/main/AndroidManifest.xml
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.INTERNET" />

iOS

# ios/Runner/Info.plist
<key>NSCameraUsageDescription</key>
<string>This app uses camera for gesture recognition</string>
<key>NSMicrophoneUsageDescription</key>
<string>This app uses microphone for speech recognition</string>

๐Ÿ“ฑ App Screens & Navigation

Main App Flow

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Splash Screen  โ”‚ => โ”‚  Onboarding     โ”‚ => โ”‚  Auth Screen    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                                                        โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Profile Setup  โ”‚ <= โ”‚   Home/Dashboard โ”‚ <= โ”‚  Main Navigationโ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                                โ”‚
        โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
        โ”‚                       โ”‚                       โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚   Lessons     โ”‚    โ”‚   Practice Mode   โ”‚    โ”‚   Progress    โ”‚
โ”‚   Browser     โ”‚    โ”‚   (Camera)        โ”‚    โ”‚   Tracking    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Key Screens

Screen Purpose Key Features
Onboarding First-time user introduction Tutorial, permissions, setup
Dashboard Main hub for learning activities Progress overview, daily goals
Lesson Browser Browse available lessons Categories, difficulty levels
Practice Mode Interactive learning session Gesture recognition, feedback
Quiz Mode Test knowledge and skills Timed challenges, scoring
Progress Track learning journey Statistics, achievements
Profile User settings and preferences Account settings, app config

๐ŸŽฎ Usage Guide

Getting Started

First Launch

  1. Welcome & Permissions: Grant camera and microphone access
  2. User Profile: Set up your learning preferences and goals
  3. Skill Assessment: Take a quick test to determine your starting level
  4. Tutorial: Learn how to use gesture recognition and app features

Daily Learning Flow

  1. Dashboard Check: Review daily goals and progress
  2. Lesson Selection: Choose from recommended or browse all lessons
  3. Interactive Learning: Follow guided instructions with AI feedback
  4. Practice Session: Use camera to practice gestures
  5. Quiz Challenge: Test your knowledge with interactive quizzes
  6. Progress Review: Check achievements and plan next session

Core Features Usage

๐Ÿค Gesture Recognition

// Example gesture practice flow
1. Position camera at arm's length
2. Ensure good lighting and clear background  
3. Follow on-screen gesture guide
4. Receive real-time feedback
5. Repeat until accuracy target is met

๐Ÿ—ฃ๏ธ Speech Practice

// Speech-to-sign learning
1. Listen to spoken word/phrase
2. Perform corresponding sign language gesture
3. App recognizes your gesture
4. Get feedback on accuracy and timing

๐ŸŽฎ Gamified Challenges

// Daily challenge example
1. Complete 5 new gestures
2. Practice for 15 minutes
3. Achieve 85% accuracy rate
4. Earn points and badges
5. Maintain learning streak

๐Ÿ“Š Learning Progress & Analytics

Progress Tracking

Metric Description Visualization
Accuracy Score Gesture recognition accuracy Progress bars, charts
Learning Streak Consecutive days of practice Streak counter, calendar
Skill Level Current proficiency level Level badges, progress rings
Time Practiced Total learning time Time tracking, goals
Gestures Learned Number of mastered signs Achievement counters

Adaptive Learning

  • Difficulty Adjustment: Automatically increases challenge based on performance
  • Personalized Recommendations: Suggests lessons based on learning patterns
  • Weakness Identification: Highlights areas needing improvement
  • Optimal Timing: Reminds users when to review previously learned content

๐Ÿงช Testing

Test Coverage

# Run all tests
flutter test

# Run with coverage
flutter test --coverage

# Generate coverage report
genhtml coverage/lcov.info -o coverage/html

# Integration tests
flutter drive --target=test_driver/app.dart

Test Categories

Unit Tests (lib/test/unit/)

  • Model validation
  • Service logic testing
  • Utility function verification

Widget Tests (lib/test/widget/)

  • UI component testing
  • User interaction simulation
  • Layout validation

Integration Tests (lib/test/integration/)

  • Complete user flow testing
  • API integration verification
  • Camera and ML model testing

๐Ÿ“ฆ Building & Deployment

Build Commands

Android

# Debug APK
flutter build apk --debug

# Release APK  
flutter build apk --release

# App Bundle (for Play Store)
flutter build appbundle --release

iOS

# Debug build
flutter build ios --debug

# Release build  
flutter build ios --release

# Create archive for App Store
flutter build ipa

App Store Deployment

Google Play Store

# Upload using fastlane
fastlane android deploy

# Manual upload
# Upload generated app-release.aab to Google Play Console

Apple App Store

# Upload using fastlane
fastlane ios deploy

# Manual upload via Xcode
# Archive and upload through Xcode Organizer

๐ŸŽฏ Learning Curriculum

Beginner Level (A1)

  • Basic Alphabet: A-Z fingerspelling
  • Numbers: 0-20 counting
  • Common Greetings: Hello, goodbye, thank you
  • Family Members: Mom, dad, brother, sister
  • Daily Activities: Eat, sleep, work, study

Intermediate Level (A2-B1)

  • Emotions & Feelings: Happy, sad, angry, excited
  • Colors & Shapes: Basic color vocabulary
  • Time & Dates: Days, months, telling time
  • Food & Drinks: Common meal vocabulary
  • Transportation: Car, bus, train, airplane

Advanced Level (B2-C1)

  • Professional Terms: Job titles, workplace vocabulary
  • Complex Conversations: Multi-sentence dialogues
  • Abstract Concepts: Ideas, opinions, emotions
  • Cultural Context: Deaf culture, community values
  • Regional Variations: Different sign language dialects

Specialized Modules

  • Medical Signs: Healthcare vocabulary
  • Educational Signs: School and learning terms
  • Emergency Signs: Safety and urgent communication
  • Religious Signs: Spiritual and ceremonial vocabulary

๐ŸŒ Accessibility & Inclusivity

Accessibility Features

  • High Contrast Mode: Better visibility for users with visual impairments
  • Text Size Options: Adjustable font sizes for readability
  • Voice Commands: Navigate app using voice controls
  • Haptic Feedback: Vibration feedback for interactions
  • Screen Reader Support: Compatible with TalkBack and VoiceOver

Cultural Sensitivity

  • Community Input: Developed with deaf community feedback
  • Cultural Context: Includes deaf culture education
  • Regional Support: Multiple sign language variants
  • Inclusive Design: Welcomes learners from all backgrounds

๐Ÿ›ฃ๏ธ Roadmap

Version 1.0 (Current) โœ…

  • Basic gesture recognition (ASL alphabet & numbers)
  • Interactive lessons and quizzes
  • Progress tracking and gamification
  • Offline mode support
  • Speech-to-text integration

Version 1.5 (Q3 2024) ๐Ÿ”„

  • Advanced gesture recognition (words and phrases)
  • AI chatbot for conversation practice
  • Social features (friend challenges, leaderboards)
  • Multiple sign languages (BSL, JSL)
  • Improved accuracy with better ML models

Version 2.0 (Q1 2025) ๐Ÿ“‹

  • AR overlays for gesture guidance
  • Live video chat with interpreters
  • Advanced analytics and learning insights
  • Teacher/parent dashboard
  • Certification and achievement system

Long-term Vision ๐Ÿš€

  • VR immersive learning experiences
  • Integration with video calling platforms
  • Global sign language community platform
  • AI-generated personalized curriculum
  • Wearable device integration

๐Ÿค Contributing

We welcome contributions from developers, educators, and the deaf community!

How to Contribute

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Make your changes following our coding standards
  4. Test your changes thoroughly
  5. Commit your changes (git commit -m 'Add amazing feature')
  6. Push to the branch (git push origin feature/amazing-feature)
  7. Open a Pull Request

Contribution Areas

  • ๐Ÿ› Bug Fixes: Help identify and fix issues
  • โœจ New Features: Implement new learning modules
  • ๐ŸŽจ UI/UX Improvements: Enhance user experience
  • ๐Ÿ“š Content Creation: Add new lessons and gestures
  • ๐ŸŒ Localization: Translate app into new languages
  • ๐Ÿ“– Documentation: Improve guides and tutorials

Development Guidelines

  • Follow Flutter/Dart best practices
  • Write comprehensive tests for new features
  • Use meaningful commit messages
  • Update documentation for significant changes
  • Respect accessibility guidelines

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

MIT License

Copyright (c) 2024 Sign Language Learner Contributors

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software")...

๐Ÿ™ Acknowledgements

Special Thanks

  • National Association of the Deaf (NAD) - Guidance and feedback
  • Gallaudet University - Sign language curriculum consultation
  • Google MediaPipe Team - Hand tracking technology
  • Flutter Community - Open source packages and support
  • Beta Testers - Early feedback from deaf community members

Technology Partners


๐Ÿ“ž Support & Community

Getting Help

Community Links


๐Ÿ“ˆ App Statistics

GitHub Stars GitHub Forks Downloads Rating


Made with โค๏ธ for inclusive education and accessibility

Help us make sign language learning accessible to everyone!

โญ Star this repository if you found it helpful! โญ

>>>>>>> 5583778ab93d8a6f0f663560343827efe5ba2890

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published