Skip to content

SignHub is an innovative platform designed to bridge the communication gap for the deaf and hard-of-hearing community. It allows users to upload, view, and interact with gesture videos representing various sign languages, enabling better accessibility and understanding. Users can submit gesture videos with detailed descriptions.

Notifications You must be signed in to change notification settings

Aymen016/SignHub

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gesture Detail Web Application

Overview

The Gesture Detail Web Application is a comprehensive platform designed to catalog and showcase gesture videos. It aims to provide an intuitive and visually appealing interface for users to explore gestures from various dialects of sign language. This project is particularly useful for researchers, educators, and learners in the domain of sign language.


Features Implemented

1. Responsive Design

  • Bootstrap 4.5.2 integration ensures responsiveness across devices.
  • Custom CSS enhances visual aesthetics and maintains a consistent layout.

2. Navigation Bar

  • Links to:
    • Home: Navigate to the homepage.
    • View Videos: Explore the collection of gesture videos.
    • About: Learn more about the application.
  • Hover effects improve usability.

3. Gesture Detail Page

  • Displays comprehensive details of an individual gesture:
    • Gesture Name: Prominently displayed at the top.
    • Video Playback:
      • Embedded video player for gestures with video files.
      • Placeholder text ("No video available for this gesture") for missing videos.
    • Description:
      • Displays the gesture description or a fallback message if absent.
    • Dialect(s):
      • Shows dialects related to the gesture or "Not specified."
    • Submitted By:
      • Indicates the submitter's name or defaults to "Anonymous."
  • Features a "Back to Video List" link for easy navigation.

4. Enhanced Styling

  • Background: Light gray (#f5f7fa) ensures readability.
  • Boxes: White backgrounds with rounded corners and subtle shadows.
  • Text Colors:
    • Dark text (#333) for primary content.
    • Highlighted elements in blue (#007bff) or red (#ea445a).
  • Video Player: Centered with a fixed maximum width for a clean layout.

5. Error Handling

  • Ensures fallback messages for missing data, such as:
    • Video files.
    • Description or dialect information.
    • Submitter details.

6. Database Integration (MongoDB)

  • MongoDB is used as the backend database for storing gesture-related data.
  • Database Name: signhub
  • Collection Name: gestures

MongoDB Database Structure

Database Name

  • signhub

Collection Name

  • gestures

Document Structure

Each document in the gestures collection represents a gesture with the following fields:

Field Name Data Type Description
_id ObjectId Unique identifier for the gesture (automatically generated).
name String The name of the gesture.
description String Detailed description of the gesture.
dialect String Dialects associated with the gesture (e.g., Punjabi, Sindhi).
video_url String URL pointing to the gesture video file.
submitted_by String Name of the person who submitted the gesture.
created_at Date Timestamp indicating when the gesture was added.

How to Run the Project

Prerequisites

  1. Install Python 3.8+.
  2. Install MongoDB and set up the database.
  3. Install the required Python packages.

Setup Instructions

  1. Clone the repository:

    git clone <repository-url>
    cd <repository-directory>
  2. Install dependencies:

    pip install flask pymongo
  3. Set up MongoDB:

    • Start MongoDB locally or configure a cloud database.
    • Create the database and collection using the structure described above.
  4. Configure the Flask application:

    • Update the app.py file with the MongoDB connection string:
      from pymongo import MongoClient
      
      client = MongoClient("<your-mongodb-connection-string>")
      db = client['signhub']
      gestures_collection = db['gestures']
  5. Run the Flask server:

    python app.py
  6. Access the application in your browser at:

    http://127.0.0.1:5000/
    

Example Document in MongoDB

{
  "_id": "6487f1a462b1e23f98b1d4e9",
  "name": "Hello Gesture",
  "description": "A friendly greeting gesture commonly used in Pakistani Sign Language.",
  "dialect": "Punjabi",
  "video_url": "/videos/hello.mp4",
  "submitted_by": "Ali Khan",
  "created_at": "2024-11-25T10:30:00Z"
}

Planned Features

  • Upload Functionality: Allow users to upload gesture videos and metadata.
  • User Authentication: Secure login system for personalized interactions.
  • Search and Filter: Enable searching and filtering gestures by dialect or category.
  • Analytics Dashboard: Display insights into gesture usage and submissions.

Contributing

Contributions are welcome! Please fork the repository, create a branch, and submit a pull request. For major changes, open an issue first to discuss the proposed changes.


Feedback and Support

For any issues or suggestions, feel free to open an issue on GitHub or contact us at [email protected].


License

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

About

SignHub is an innovative platform designed to bridge the communication gap for the deaf and hard-of-hearing community. It allows users to upload, view, and interact with gesture videos representing various sign languages, enabling better accessibility and understanding. Users can submit gesture videos with detailed descriptions.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •