Este proyecto es una placa nativa React que se puede usar para iniciar una aplicación móvil.
La Boilerplate ofrece una arquitectura optimizada para construir aplicaciones móviles multiplataforma sólidas a través de la separación de las preocupaciones entre la interfaz de usuario y la lógica comercial. Se informa increíblemente para que cada código que aterriza en su aplicación se pueda entender y utilizar.
If you love this boilerplate, give us a star, you will be a ray of sunshine in our lives :)El proyecto está configurado con Microsoft App Center for Crash Analytics. También ayudará a distribuir su aplicación con el equipo de control de calidad. Futhermore, CI/CD se pueden implementar fácilmente.
Puede aplicar secreto desde androidappsrcmainassetsappcenter-config.json File.
"@react-native-community/async-storage": "^1.9.0",
"@react-native-community/masked-view": "^0.1.9",
"@react-navigation/native": "^5.1.5",
"@react-navigation/stack": "^5.2.10",
"axios": "^0.19.2",
"react": "16.11.0",
"react-native": "0.62.2",
"react-native-config": "^1.0.0",
"react-native-elements": "^1.2.7",
"react-native-floating-action-button": "^0.2.2",
"react-native-gesture-handler": "^1.6.1",
"react-native-paper": "^3.8.0",
"react-native-reanimated": "^1.8.0",
"react-native-safe-area-context": "^0.7.3",
"react-native-screens": "^2.4.0",
"react-native-vector-icons": "^6.6.0"
El proyecto tiene separación de preocupaciones para aumentar la flexibilidad y la mantenimiento. Las preocupaciones se dividen en porciones que se dan a continuación como:
La capa de presentación tiene todos los componentes y archivos en los que se muestran ubicaciones y elementos que se visitarán para el usuario y a través de los cuales el usuario interactuará con el sistema.
La capa de acción tiene todos los componentes y archivos que se utilizarán para realizar ciertas acciones. Por ejemplo, método de inicio de sesión, método de registro, validador de campo, etc.
La capa de acción tiene todos los componentes y archivos que se utilizarán para realizar llamadas API. Esta capa será administrada por Axios Library.
La división del código es muy necesaria para aumentar la reutilización y aumentar la flexibilidad. Este proyecto está diseñado de esta manera que agradece todos los cambios. Algunas de las divisiones se dan a continuación:
La carpeta utilis tendrá todos los archivos para definir, etiquetas, cosntants y otra información que se utilizará en utilis en el proyecto.
La carpeta de activos tendrá todos los recursos como imágenes, archivos de audio, etc.
La carpeta de configuración tendrá todas las configuraciones de configuración de la aplicación.
La carpeta de componentes tendrá todos los componentes personalizados como campos de texto personalizados, botones, encabezado, etc.
La carpeta de Stlyes tendrá todos los archivos CSS para proporcionar un diseño de nivel de proyecto. Esta carpeta también contiene carpeta de color para definir los colores del tema de forma separada.
Todos quieren optimizar la forma de distribución de APP para las pruebas Quicky. Algunas veces tenemos servidores separados y bases de datos de back -end para QA, desarrollo, cierre y producción. Este proyecto tiene 4 variantes de compilación, es decir, depuración, lanzamiento de control de calidad, lanzamiento de puertas de seguridad, lanzamiento. Puede cambiar las configuraciones de variantes de los siguientes archivos. .env.dev para debug .env.qa para el lanzamiento de control de calidad .env.stagging para el lanzamiento de puesta en escenario .env.production para el lanzamiento
La versión de control de calidad, el lanzamiento de la puesta en cierre, el lanzamiento tendrá un paquete JS para que se ejecutará sin servidor Node JS, mientras que la depuración es para el equipo de Dev, por lo que necesitará Node JS (Metro Server en ejecución).
Puede cambiar los archivos para cada variante de android/app/build.gradle
project.ext.envConfigFiles = [
debug: ".env.dev",
release: ".env.production",
qarelease: ".env.qa",
staggingrelease : ".env.stagging",
anothercustombuild: ".env.qa",
]
Para crear un nuevo proyecto utilizando la Boilerplate:
Suponiendo que tenga todos los requisitos instalados, puede configurar y ejecutar el proyecto ejecutando:
cd android ./gradlew clean assembleQarelease para crear la liberación de control de calidad APK ./gradlew clean assembleStaggingrelease para crear una liberación de inadapcionamiento APK ./gradlew clean assembleRelease para crear APK de liberación
react-native run-android --variant=qarelease react-native run-android --variant=staggingrelease react-native run-android --variant=release
Por defecto, la variante de depuración se ejecutará en el dispositivo.
Las contribuciones, los problemas y las solicitudes de funciones son bienvenidas. No dude en verificar la página de problemas si desea contribuir.
Mi nombre es Abid Jamil de Pakistán, soy ingeniero de software senior en Nextbridge Ltd Pakistan. Tengo experiencia en Android nativo | Reaccionar - Nativo | IOS | Android | Java | Kotlin | JavaScript | MVVM | MVP | Rxjava | Daga | Diseño de material | Datos en vivo | Enlace de datos. Futhermore, soy una contribución de código abierto e investigador de informática. He publicado 17 documentos de investigación que es disponible en el perfil de Google Scholar. He entregado muchas charlas en diferentes universidades nacionales e internacionales en todo el mundo.