SaFi Bank Space : Flutter Tools Libraries

Overview

  • Flutter as the Frontend platform chosen by the team after learning both pros and cons.

  • Moving forward we want to consolidate with other teams like Security, GTM, SRE, Fraud/Risk

Flutter Tools or Libraries

Within Flutter itself, it has additional features which to be considered. We want to raise this to the team so the team can align and decide what’s best for us.

To be considered

Proposal Usage

Team Decision

Flutter version

Latest

 (tick)

Null Safety

Enabled

 (tick)

Local Storage

https://pub.dev/packages/hive

 (tick)

State Management

https://pub.dev/packages/flutter_bloc

 (tick)

Event Bus / Pub sub

Cubit within Bloc https://pub.dev/packages/flutter_bloc

 (tick)

Biometric + IDM* Security (What will our IDM be?)

https://pub.dev/packages/local_auth + Custom implementation

Forgerock SDK POC first, will need to create Flutter wrapper and homemade plugin for this. Forgerock Saas or on-prem.
? Consider POC in Jago on-prem Forgerock.

Andre Laksmana (Unlicensed) will get the security implementation detail in Jago
Juraj Macháč (Unlicensed) will check on the possibility to test Forgerock SDK within development environment in Safi.

(blue star) Direct call to IDM should be wrapped instead. Shall we use GraphQL? Proper versioning of API is important.

Dependency injector

https://pub.dev/packages/kiwi

 (tick)

Push Notification

https://firebase.flutter.dev/docs/messaging/overview/
or
Braze
https://www.braze.com/
or
Ably https://ably.com/

 Ably is chosen (tick)

Crash Reporting

firebase https://firebase.flutter.dev/docs/crashlytics/overview or
https://www.dynatrace.com/platform/digital-experience-monitoring/

 firebase https://firebase.flutter.dev/docs/crashlytics/overview(tick)

Analytics* GTM+Data+Fraud (What do we want to use for analytics platform?)

https://firebase.google.com/docs/analytics
or
https://mixpanel.com/ ~ 8 hours delay → Google Data

Ion Mudreac need feedback from Analytics/Data team.

Mobile Monitoring* SRE+Data (How do we monitor Production?)

https://firebase.google.com/docs/analytics
or
https://www.dynatrace.com/platform/digital-experience-monitoring/

or
Cloud pubsub > Data team
https://pub.dev/packages/gcloud

 team prefers https://firebase.google.com/docs/analytics (tick)

Next step is to design analytics events within SaFi app Widgets so that it automatically include the events reporting to the analytics wrappers. And we can also have the choice to disable the event reporting, but by default is reported.

Feature Flag

https://firebase.google.com/docs/remote-config
or
https://ably.com/
or
https://launchdarkly.com/

 (tick) https://firebase.google.com/docs/remote-config is chosen due to the availability of A/B testing and full monitoring tools and integration to chosen Google Analytics.

Language References

Need discussion, static versus dynamic

 (tick) For MVP Static is chosen

Asset Management

GCS Bucket combined with MS and Hive Localstorage
vs
Static image
vs
Firestore

(tick) GCS bucket is chosen

VKYC

 https://in.advance.ai/

 

Liveness

https://in.advance.ai/

Mobile App Security

vkey

onespan

https://everspin.global/en/index.html
Google obfuscation

Ion Mudreac we need to discuss this one

SAST

Sonarqube

(tick)