SignBridge Documentation¶
Welcome! This is the official documentation for SignBridge.
First steps¶
Get started and set up your environment.
Learn all available settings and options.
Learn all available settings and options.
Walk through a hands-on example step by step.
Getting help¶
Find answers to common questions about the application.
Browse the complete documentation structure and references.
Models¶
SignBridge uses Flask-SQLAlchemy with a single models.py to define the
data layer, and Flask-Migrate to manage schema evolution against a PostgreSQL
database.
Learn how models are structured and used in the application.
View the entity relationship diagram for the database schema.
Learn how database migrations work with Flask-Migrate.
Step-by-step guide for creating and applying migrations.
Configure PostgreSQL for production and deployment environments.
Use SQLite for lightweight local development and testing.
Populate the database with default or sample application data.
Learn how to create and execute queries using SQLAlchemy.
Blueprints¶
SignBridge has the concept of blueprints to encapsulate the logic
responsible for processing a user’s request and returning a response. The
application is divided into the following blueprints: main, auth,
call, user, admin, help, and errors.
Templates¶
The template layer provides a Jinja2-based syntax for rendering the
information to be presented to the user. SignBridge templates are organised
around a shared base.html and blueprint-specific subdirectories.
Learn the basics of working with templates in the application.
Explore the available CSS styles and design utilities.
Forms¶
SignBridge uses Flask-WTF for all form handling, with form classes defined in
each blueprint’s forms.py module.
Form class reference: auth/forms.py | call/forms.py | user/forms.py | main/forms.py | admin/forms.py
Authentication¶
SignBridge provides full user lifecycle management — registration, login, and email-based password reset — alongside a token-based REST API authentication system.
The REST API¶
SignBridge exposes a REST API under the api/ blueprint for programmatic
access to users, rooms, and tokens.
Endpoint reference: API endpoint reference
Authentication: Authentication
How-to: How-to guides
The sign language model¶
SignBridge ships with a MobileNet-based Sri Lanka Sign Language (SLSL)
classifier that runs client-side via TensorFlow.js. Model files live in
static/models/.
Overview: How the model works
Architecture: MobileNet model architecture | Input preprocessing |
Customisation: Adding new sign classes | Retraining guide
Help pages: SLSL chart | Video tutorial page
The development process¶
Learn about the various components and tools that support local development of SignBridge.
Configuration: config.py overview |
App factory: app/__init__.py | extensions.py
Logging: Logging setup
Static files: CSS overview | JS module overview
Testing¶
SignBridge’s test suite is built with pytest, covering models, authentication flows, the REST API, room logic, and end-to-end Selenium tests.
Introduction: Running the test suite | conftest.py
Test module reference: test_models.py | test_auth.py | test_api.py | test_rooms.py | test_selenium.py
Deployment¶
Overview: Deployment overview | Pre-deployment checklist
Socket.IO: Deploying with eventlet / gevent |
Database: PostgreSQL setup & running migrations |
Security¶
Security is highly important in a real-time video application, and SignBridge provides several layers of protection.
Indices and Search¶
The SignBridge project¶
Design: Architecture overview | ERD diagram | GitHub repository
SignBridge over time: Changelog | About this documentation