This is a review of the package.json file on the GAEN Mobile Github as of
...
Reaason for dependency component:
BugSnag - used for bug and error tracking within the GAEN mobile code and catching crashes and other hidden issues breaking the app
React Native Community:
Async Storage - Key/Value storage system for React Native. Being used for app specific data. Stores data right in app “local storage”. This package is deprecated -
DateTimePicker - for selecting various dates in the application
MaskedView - No clear usage currently - normally would show Shows an opaque view that is hidden from the user but still rendered.
NetInfo - No clear usage currently - normally used Used for managing components/code for when certain network events fire.
PushNotificationiOS - used for sending native push notifications to iOS devices from the app
Segmented Control - Possible we aren’t using
React Navigation
Bottom Tabs - Used for basic navigation between screens in the app.
Native - Used for leveraging OS level navigation between screens in the app.
Stack - Managing multiple activities going on within the app
Array Flat Polyfill - Brought in to add “array flattening” functionality for Javascript
DayJS - Parsing and date manipulation
i18Next - Used for Translations
NodeFetch - Core functionality for retrieving data. Remove and see if the app fails without - currently not being used on the development branch.
PropTypes - Core functionality for checking types of property variables
React i18Next - Used for translations
React Native - Core functionality for the entire app framework
React Native Config - Core functionality for the entire app framework
React Native Flash Message - Functionality for toasts and other “in app” popup messaging
React Native Gesture Handling - May not be used - only used in a jest config. May be removed
React Native Keyboard Aware Scroll - Used for auto scrolling input screens when the current input leaves the view
Matomo SDK - Used for Analytics
Permissions - Provides access to the OS permissions (enabling EN, Notifications, etc.)
Safe Area Context - Used for keeping the UI within the correct areas of a device
Screens - Core functionality for allowing multiple screens
Simple Crypto - Used for hashing to package the keys before sending up to the server
Splash Screen - Used for a UI element on initial app load splash screen
Static Safe Area Insets - Companion package to Safe Area Context
SVG - Used for displaying and manipulating SVGs used on the mobile app UIs
Webview - Currently being used for Tableau analytics on some GAEN apps
Reanimated Bottom Sheet - Currently Unsure
Regression - Currently Unsure
TS Data JSON - Used for deserializing JSON responses