Project Structure and Organization


Folders Explained

Most of the setup is derived from default structure of default expo setup. We have made our own tweaks of setup according to our needs.

  • @arivaa-react - Contains modules related to react and not react native e.g redux
    • redux - Contains core architecture of redux. Learn more about here
  • @arivaa-react-native - Contains reusable components as advertised in this app
    • common - Contains components and styles having no as such dependency on expo and are in general compatible with any react native application
    • expo - Contains expo specific setup of componentns and dependency injection of expo specific modules in common components
  • assets - Contains all the assets for the application
  • components - Contains all the Reusable React Native components that are specific to this application.
  • constants - Constants and Configuration used throughout the whole application. e.g Facebook API Ids, Google Credentials etc
  • helpers - Contains the common utility code used across the app.
  • localization - Contains translation files and multi language setup
  • mock - Mock API Setup for simulating real time flow of apis.
  • plugins - Plugins required for development using this setup e.g babel plugins.
  • redux - Contains all the actions, reducers and the Redux configuration specific to this app.
  • routing - Contains all the routing architecture across the application.
  • screens - Contains the application screens and their related components 
  • setup - Contains the initial setup related code
  • App.js - Main entry point of the application
  • app.json - Configuration file for editing Expo related configuration.
  • package.json - Dependencies


Published On October 14, 2020 5:57 PM

Last Updated October 15, 2020 12:48 PM