← Back to home

Technical Deep Dive · Manorama SSO

Building a configurable Flutter SDK for a shared Manorama login ecosystem

Android and iOS already had native SSO SDK mechanisms. I built the Flutter SDK layer so Manorama Flutter apps could use the same authentication system with reusable login screens, client configuration, platform security setup, and documented installation steps.

CompanyHiFX IT & Media Services
RoleSenior Flutter Developer (Solo)
TimelineSep 2023 – Dec 2024
Result10M+ user ecosystem

Why It Exists

One account system needed a Flutter integration path without every app rebuilding auth

The goal was not to build a single app login screen. The goal was to create a reusable Flutter SDK layer that could sit inside different Manorama Flutter applications and follow the same SSO behavior already available through native Android and iOS SDKs.

The SDK reads app/client configuration, initializes storage and device details, applies platform-specific Android/iOS values, and presents the auth flows needed by the consuming app.

Configurable SDK

Admin/client instructions control how the SSO experience behaves for each app

Environment

Stage and production setup

The SDK loads a JSON configuration and switches between UAT and production identity endpoints.

Client identity

Android and iOS app mapping

Configuration supports platform-specific client IDs, bundle/package identity, redirect URLs, scopes, and hashes.

Brand system

Network logo visibility

The bottom "One Network. One Account." area can show or hide Manorama ecosystem logos per app configuration.

Login options

Password, OTP, Google, Apple

The SDK supports multiple sign-in paths and social login options based on platform/app requirements.

Security

SHA/fingerprint and token handling

Android fingerprint/signature details are captured, client tokens are generated, and SHA-256 code challenge flow is used.

Adoption

Documentation and example app

The package includes an example app and setup path so other Flutter apps can integrate the SDK consistently.

SDK Screens

Reusable screens for the shared Manorama account experience

Manorama SSO sign in screen
Manorama SSO OTP sign in screen
Manorama SSO create account screen
Manorama SSO reset password screen

Manorama SSO sign-in interface showing unified login options.

Engineering Flow

The SDK separates app configuration, platform setup, UI flows, and callbacks

01

Initialize config

Load the app's SSO JSON, initialize storage, read package/bundle data, and prepare Android/iOS client values.

02

Present auth flows

Expose login, OTP login, register, forgot password, profile completion, and edit email/mobile/name flows.

03

Secure requests

Use client hash/token generation, app fingerprint details, device metadata, and code challenge generation.

04

Return control

Use auth and user callbacks so the consuming Flutter app can continue after login or required-field completion.

Challenges & Resolution

The hard part was making a shared identity system feel simple for every Flutter app team

Challenge

Native SDK behavior had to be brought into Flutter without changing the identity direction.

Resolution

Created a Flutter SDK wrapper around the same client configuration and login behavior used by the native SSO approach.

Benefit

Flutter apps could adopt Manorama SSO without rebuilding the login system independently.

Challenge

Different apps needed different branding and login options.

Resolution

Used configuration-driven flags for environment, social options, and Manorama network logo visibility.

Benefit

The same SDK could support different app identities while keeping the core SSO flow consistent.

Challenge

Security setup had to work across platform-specific app identities.

Resolution

Handled package/bundle mapping, fingerprint/signature details, client hashes, token generation, and SHA-256 challenge flow.

Benefit

Reduced integration mistakes and made the SDK safer to reuse across Flutter apps.

This case study is intentionally separated from app migration work. The SSO SDK is a platform contribution for Manorama's wider Flutter app ecosystem.

Flutter SDKManorama SSOAndroid/iOS bridgeJSON configurationOTPGoogle Sign-InApple Sign-InSHA/fingerprint setupDocumentation

Outcome

Unified authentication across all Flutter properties

By bridging native single sign-on mechanisms with a highly configurable Flutter SDK layer, the platform contribution eliminated fragmented authentication logic, aligned security policies, and unified user access across multiple properties.

Known result: Single-handedly architected and delivered the custom SSO SDK serving a 10M+ user ecosystem.

Contact

Ready to discuss senior Flutter, mobile architecture, or product engineering roles