Skip to Content
New: AI Sign Language Avatars now in beta! View Sign Language feature ->
MobileOverview

Mobile Accessibility SDK

WelcomingWeb extends accessibility management beyond the browser. Drop a lightweight SDK into your mobile app and detect WCAG 2.2 issues as users navigate — before they ever reach the App Store or Play Store. Every scan flows into the same dashboard as your website accessibility data, mapped to the same standards.

All four SDKs are production-ready. React Native, Flutter, native iOS (Swift) and native Android (Kotlin) all ship today with an identical rule set, scoring model and dashboard experience. The server doesn’t know which SDK produced a scan — only the platform field in the payload differs.

Pick Your Platform

What the SDK Does

One Engine, Four SDKs

Every SDK is a 1:1 port of the same engine. What that means in practice:

  • Same rules. The eight WCAG 2.2 rules, their severities, their WCAG mappings, and their rule IDs (mobile-missing-accessibility-label, mobile-touch-target-size, etc.) are identical across React Native, Flutter, iOS and Android.
  • Same score formula. penalty = 10·critical + 5·major + 1·minor, clamped against components × 10, normalised to 0–100.
  • Same API payloads. Only the platform field differs (react_native, flutter, ios_native, android_native). All other keys, casing and shapes match.
  • Same behavioural contract. Auto-scan on screen change, 600 ms post-navigation delay, 15 s HTTP timeout, max two retries with jitter, background hook flushes pending scans, 50-scan in-memory cap.
  • Same dashboard. Every scan lands in the same place, filterable by platform and app version.

A Three-Step Integration

Regardless of platform, bringing WelcomingWeb into your mobile app follows the same shape.

Step 1: Configure the SDK

Call configure() once at app startup with your API key and app ID. Set the environment, enable auto-scan for development, and optionally provide callbacks to inspect scan results inline.

Step 2: Track Your Screens

Each SDK exposes a platform-idiomatic way to track screens: a HOC or hook on React Native, a widget on Flutter, a one-line install call on iOS (automatic view-controller tracking via swizzling), and three choices on Android (Activity lifecycle, NavController, or manual).

Step 3: (Optional) Add the Accessibility Panel

Drop the panel into your app to give end users runtime controls for text size, high contrast, reduce motion, screen curtain and a reading guide. The panel respects the device’s real accessibility state — it augments system settings rather than fighting them.

Architecture at a Glance

Every SDK is built from four layers that work together to scan, report and adapt.

  • Core (singleton or actor): configuration, component-tree walking, rule execution, session management, API submission.
  • Screen tracking: the platform-native hook, widget, modifier or lifecycle observer that registers screens and triggers scans on focus.
  • Rules engine: eight per-node rules plus one screen-level rule. Each issue includes WCAG mapping, severity, evidence and a fix suggestion.
  • UI components: the optional accessibility panel and provider that apply global effects like the screen curtain and reading guide.

Platform-Native Distribution

PlatformDistributionLanguage / FrameworkDependencies
React Nativenpm / yarn — @welcomingweb/react-native-sdkTypeScript / JavaScriptZero native module dependencies
iOSSwift Package ManagerSwift, UIKit and SwiftUIZero — Apple-bundled only
AndroidMaven Central — com.welcomingweb:sdkKotlin, Views and Jetpack ComposeOkHttp, Kotlin coroutines, lifecycle-process
Flutterpub.dev — welcomingweb_flutter_sdkDarthttp, app_settings (iOS deep-link only)

Minimum Requirements

PlatformMinimum
React NativeReact Native 0.70+, React 18.0+, iOS 13+ / Android API 21+
iOSiOS 13+, Swift 5.9+, Xcode 15+
AndroidAndroid API 21+ (Lollipop), Kotlin 1.9+, optional Compose 1.6+
FlutterFlutter 3.10+, Dart 3.0+, iOS 13+ / Android API 21+

Need Help?

Our mobile accessibility team is available for technical questions, integration reviews and onboarding support.

Contact support · Book a demo

Last updated on