Proyek ini adalah boilerplate asli React yang dapat digunakan untuk memulai aplikasi seluler.
Boilerplate memberikan arsitektur yang dioptimalkan untuk membangun aplikasi seluler lintas platform yang solid melalui pemisahan kekhawatiran antara UI dan logika bisnis. Dilaporkan luar biasa sehingga setiap bagian kode yang mendarat dalam aplikasi Anda dapat dipahami dan digunakan.
If you love this boilerplate, give us a star, you will be a ray of sunshine in our lives :)Proyek ini dikonfigurasi dengan Microsoft App Center untuk Crash Analytics. Ini juga akan membantu untuk mendistribusikan aplikasi Anda dengan tim QA. Futhermore, CI/CD dapat diimplementasikan dengan mudah.
Anda dapat Aplikasi Rahasia dari 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"
Proyek ini memiliki pemisahan kekhawatiran untuk meningkatkan kelenturan dan pemeliharaan. Kekhawatiran dibagi menjadi beberapa bagian yang diberikan di bawah ini sebagai:
Lapisan presentasional memiliki semua komponen dan file di mana penempatan dan elemen ditampilkan yang akan menjadi visble untuk pengguna dan melalui mana pengguna akan berinteraksi dengan sistem.
Lapisan tindakan memiliki semua komponen dan file yang akan digunakan untuk melakukan tindakan tertentu. Misalnya, metode login, metode pendaftaran, validator bidang dll.
Lapisan tindakan memiliki semua komponen dan file yang akan digunakan untuk melakukan panggilan API. Lapisan ini akan dikelola oleh Perpustakaan Axios.
Divisi kode sangat diperlukan untuk meningkatkan reusability dan meningkatkan kelenturan. Proyek ini dirancang dengan cara ini sehingga menyambut semua perubahan. Beberapa divisi diberikan di bawah ini:
Folder utilis akan memiliki semua file untuk ditentukan, label, cosntants, dan informasi lain yang akan digunakan di utilis dalam proyek.
Folder Aset akan semua sumber daya seperti gambar, file audio dll.
Folder konfigurasi akan semua pengaturan konfigurasi aplikasi.
Folder komponen akan memiliki semua komponen khusus seperti bidang teks khusus, tombol, header dll.
Folder Stlyes akan memiliki semua file CSS untuk menyediakan desain tingkat proyek. Folder ini juga berisi folder warna untuk menentukan warna tema secara terpisah.
Setiap orang ingin mengoptimalkan cara distribusi aplikasi untuk pengujian cepat. Beberapa kali kami memiliki server terpisah dan database backend untuk QA, Dev, Stagging dan Production. Proyek ini memiliki 4 varian build yaitu debug, rilis QA, rilis stagging, rilis. Anda dapat mengubah konfigurasi varian dari file berikut. .env.dev untuk debug .env.qa untuk rilis QA .env.stagging untuk rilis stagging .env.production untuk rilis
Rilis QA, rilis Stagging, rilis akan memiliki bundel JS sehingga akan dieksekusi tanpa Node JS Server, sedangkan Debug adalah untuk tim dev sehingga perlu Node JS (Metro Server yang berjalan).
Anda dapat mengubah file untuk setiap varian dari android/app/build.gradle
project.ext.envConfigFiles = [
debug: ".env.dev",
release: ".env.production",
qarelease: ".env.qa",
staggingrelease : ".env.stagging",
anothercustombuild: ".env.qa",
]
Untuk membuat proyek baru menggunakan boilerplate:
Dengan asumsi Anda memiliki semua persyaratan yang diinstal, Anda dapat mengatur dan menjalankan proyek dengan menjalankan:
cd android ./gradlew clean assembleQarelease untuk membuat rilis qa apk ./gradlew clean assembleStaggingrelease untuk membuat rilis stagging apk ./gradlew clean assembleRelease untuk membuat rilis apk
react-native run-android --variant=qarelease react-native run-android --variant=staggingrelease react-native run-android --variant=release
Secara default, varian debug akan dieksekusi pada perangkat.
Kontribusi, masalah, dan permintaan fitur dipersilakan. Jangan ragu untuk memeriksa halaman masalah jika Anda ingin berkontribusi.
Nama saya Abid Jamil dari Pakistan, saya insinyur perangkat lunak senior di Nextbridge Ltd Pakistan. Saya memiliki keahlian di Android asli | Bereaksi - Asli | Ios | Android | Java | Kotlin | JavaScript | MVVM | MVP | Rxjava | Dagger | Desain Bahan | Data langsung | Ikatan Data. Futhermore, saya adalah kontribusi open source dan peneliti ilmu komputer. Saya telah menerbitkan 17 makalah penelitian yang tersedia di Profil Google Cendekia. Saya telah menyampaikan banyak pembicaraan di berbagai universitas nasional dan internasional di seluruh dunia.