Dieses Projekt ist eine native React -Kesselplatte, mit der eine mobile Anwendung gestartet werden kann.
Die Kesselplatte bietet eine Architektur, die für den Aufbau solider plattformübergreifenden mobilen Anwendungen optimiert ist, indem die Bedenken zwischen der Benutzeroberfläche und der Geschäftslogik getrennt werden. Es wird erstaunlich gemeldet, dass jedes Code, der in Ihrer Anwendung landet, verstanden und verwendet werden kann.
If you love this boilerplate, give us a star, you will be a ray of sunshine in our lives :)Das Projekt ist mit Microsoft App Center für Crash Analytics konfiguriert. Es wird auch helfen, Ihre Bewerbung mit dem QA -Team zu verteilen. Futhermore, CI/CD kann leicht implementiert werden.
Sie können sich von androidappsrcmainassetsappcenter-config.json Datei geheim halten.
"@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"
Das Projekt hat die Trennung von Bedenken, um die Flexibilität und die Wartbarkeit zu erhöhen. Die Bedenken sind in die unten angegebenen Teile unterteilt:
Die Präsentationsschicht enthält alle Komponenten und Dateien, auf denen Platzierungen und Elemente angezeigt werden, die für den Benutzer gedreht werden und durch die der Benutzer mit dem System interagiert.
Die Aktionsschicht verfügt über alle Komponenten und Dateien, mit denen bestimmte Aktionen ausgeführt werden. Zum Beispiel Anmeldemethode, Anmeldemethode, Feld Validator usw.
Die Aktionsschicht verfügt über alle Komponenten und Dateien, mit denen API -Aufrufe durchgeführt werden. Diese Schicht wird von der Axios Library verwaltet.
Die Codeaufteilung ist sehr notwendig, um die Wiederverwendbarkeit zu erhöhen und die Flexibilität zu erhöhen. Dieses Projekt ist so konzipiert, dass es alle Änderungen willkommen heißen. Einige Abteilungen sind unten angegeben:
Der Utilis -Ordner verfügt über alle Dateien zum Definieren, Bezeichnungen, Cosneren und anderen Informationen, die bei Utilis im Projekt verwendet werden.
Der Ordner "Assets" wird alle Ressourcen wie Bilder, Audiodateien usw.
In dem Konfigurationsordner werden alle Anwendungskonfigurationseinstellungen.
Der Komponentenordner verfügt über alle benutzerdefinierten Komponenten wie benutzerdefinierte Textfelder, Schaltflächen, Header usw.
Der STLYES -Ordner verfügt über alle CSS -Dateien, um Projektniveau -Designs bereitzustellen. Dieser Ordner enthält auch Farbordner, um die Themenfarben separat zu definieren.
Jeder möchte die Art der Verteilung der App für schnelle Tests optimieren. Manchmal haben wir separate Server und Backend -Datenbanken für QA, Dev, Stagging und Produktion. Dieses Projekt hat 4 Build -Varianten, dh Debug, QA -Veröffentlichung, Veröffentlichung, Veröffentlichung. Sie können die Variantenkonfigurationen aus folgenden Dateien ändern. .env.dev für debugg .env.qa für QA -Veröffentlichung .env.stagging für die Veröffentlichung .env.production
QA Release, Stagging Release, Release wird ein JS -Bundle haben, sodass es ohne Knoten -JS -Server ausgeführt wird, während Debugg für das Dev -Team ist, sodass der Knoten JS (Metro -Server ausgeführt wird).
Sie können Dateien für jede Variante von android/app/build.gradle ändern
project.ext.envConfigFiles = [
debug: ".env.dev",
release: ".env.production",
qarelease: ".env.qa",
staggingrelease : ".env.stagging",
anothercustombuild: ".env.qa",
]
So erstellen Sie ein neues Projekt mit der Boilerplate:
Angenommen, Sie haben alle Anforderungen installiert, können Sie das Projekt durch Ausführen einrichten und ausführen:
cd android ./gradlew clean assembleQarelease So erstellen Sie QA Release apk ./gradlew clean assembleStaggingrelease ./gradlew clean assembleRelease
react-native run-android --variant=qarelease react-native run-android --variant=staggingrelease react-native run-android --variant=release
Standardmäßig wird die Debug -Variante auf dem Gerät ausgeführt.
Beiträge, Probleme und Feature -Anfragen sind willkommen. Fühlen Sie sich frei, Probleme mit der Seite zu überprüfen, wenn Sie einen Beitrag leisten möchten.
Mein Name ist Abid Jamil aus Pakistan, ich bin Senior Software Engineer bei Nextbridge Ltd Pakistan. Ich habe Fachwissen in einheimischen Android | React - Native | IOS | Android | Java | Kotlin | JavaScript | Mvvm | MVP | Rxjava | Dolch | Materialdesign | Live -Daten | Datenbindung. Futhermore, ich bin Open -Source -Beitrag und Informatikforscher. Ich habe 17 Research Paper veröffentlicht, das im Google Scholar -Profil ausreichend ist. Ich habe viele Gespräche an verschiedenen nationalen und internationalen Universitäten auf der ganzen Welt geführt.