You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Berty's application has code to handle Deeplink in stacks.tsx.
This code has a medium complexity and is exposed to bugs on every ios/android upgrade version.
It could be better if we used the React Navigation library that already exists in Berty to support Deeplink. The React Navigation Library already has some workarounds to suppress the ios/android upgrade bugs mentioned above and is well maintained by the community.
I tried replacing the existing code and using React Navigation Deeplink support, but I ran into some difficulties that I'd like to expose below.
One of the tricky points is the fact that there is a lot of business logic tied to the screens. So once you get Deeplink through React Navigation Library, you can't navigate directly to a screen. The current code requires you to go through the Setup Node screen and then navigate to the Deeplink screen. And there are a lot of business processes that happen inside each screen.
My suggestion is about to remove all business logic from the screens so that we can move from one screen to another without any dependency. All business logic must be in a layer decoupled from the screens.
After doing this screen "cleanup", we could use React Native Library to support Deeplink.
Context
Reducing the code complexity and improving the App resilience.
Possible implementation
No response
The text was updated successfully, but these errors were encountered:
Is there an existing issue for this?
Berty product
Mobile app
Feature request
Berty's application has code to handle Deeplink in
stacks.tsx
.This code has a medium complexity and is exposed to bugs on every ios/android upgrade version.
It could be better if we used the React Navigation library that already exists in Berty to support Deeplink. The React Navigation Library already has some workarounds to suppress the ios/android upgrade bugs mentioned above and is well maintained by the community.
I tried replacing the existing code and using React Navigation Deeplink support, but I ran into some difficulties that I'd like to expose below.
One of the tricky points is the fact that there is a lot of business logic tied to the screens. So once you get Deeplink through React Navigation Library, you can't navigate directly to a screen. The current code requires you to go through the Setup Node screen and then navigate to the Deeplink screen. And there are a lot of business processes that happen inside each screen.
My suggestion is about to remove all business logic from the screens so that we can move from one screen to another without any dependency. All business logic must be in a layer decoupled from the screens.
After doing this screen "cleanup", we could use React Native Library to support Deeplink.
Context
Reducing the code complexity and improving the App resilience.
Possible implementation
No response
The text was updated successfully, but these errors were encountered: