rn-boilerplate-starter
v3.0.0
Published
My custom React Native boilerplate
Downloads
58
Readme
📱 rn-boilerplate-starter
A Modern React Native boilerplate designed to help you kickstart projects with production-ready features, clean architecture, and built-in utilities.
📢 What's New
✨ v3.0.0 – Major Engine Upgrade 🎉
- 🚀 React Native 0.83.2 – Upgraded to the latest React Native version for better performance and stability.
- 💾 Storage Migration – Switched from
react-native-mmkv-storageto the blazing-fastreact-native-mmkv(powered byreact-native-nitro-modules). - 🌐 InAppBrowser – Open URLs inside your app without taking users outside the native experience.
✨ Features Out of the Box
- ⚡️ React Native 0.83.2 + React 19 - 🎨 Custom branding scripts (app icon & splash generator)
- 🗂 Organized project structure - 📦 MobX + Persist store (via react-native-mmkv) for blazing-fast state management
- 🌍 i18n with react-i18next - 📡 Tanstack Query (React Query) for data fetching & caching
- ✅ React Hook Form + Yup/Zod validation
- 🖼 SVG + Vector icons support - 📸 Vision Camera + Image Picker + Compressor - ⌨️ Keyboard controller for smooth input handling
- 🔔 Toast notifications - 🛡 Error boundaries & safe fallbacks - 🔑 Permissions handling (react-native-permissions) - 🧭 React Navigation (stack + tabs ready) - 🚀 Scripts for app branding - 🔧 Pre-configured ESLint + Prettier + TypeScript
- 💬 Modern Chat UI (WhatsApp-like) - Message bubbles
- Customizable chat header
- File & media attachments support
- Emoji picker integration
- Full-screen image viewer
- 🌐 InAppBrowser integration – open links seamlessly inside the app
🛠 Installation
# Use the template
npx @react-native-community/cli@latest init AwesomeProject --template rn-boilerplate-starter
# Install dependencies
yarn install
# iOS setup
yarn pod-install
▶️ Running the AppBash# Start Metro
yarn start
# Run on Android
yarn android
# Run on iOS
yarn ios
🎨 Branding (App Icons & Splash)Easily add your custom app icon and splash screen:Place your images in:src/assets/branding/logo.png
src/assets/branding/splash.png
Run the branding scripts:Bash# Generate app icons
yarn appicon
# Generate splash screen
yarn splash
Rebuild your app:Bashyarn android
# or
yarn ios
📂 Project StructureAwesomeProject/
├── android/ # Native Android project
├── ios/ # Native iOS project
├── src/
│ ├── assets/ # Images, fonts, branding
│ ├── components/ # Reusable UI components
│ ├── hooks/ # Custom React hooks
│ ├── navigation/ # Navigation setup
│ ├── screens/ # App screens
│ ├── store/ # MobX stores
│ ├── utils/ # Helpers & utilities
│ └── ...
├── scripts/ # Branding & other custom scripts
├── package.json
└── README.md
📜 Useful ScriptsCommandDescriptionyarn startStart Metro bundleryarn androidRun app on Androidyarn iosRun app on iOSyarn lintRun ESLintyarn formatFormat code with Prettieryarn cleanClean Android build cacheyarn releaseCreate Android APKyarn release:bundleCreate Android App Bundle (AAB)yarn pod-installInstall iOS podsyarn appiconGenerate app icons from src/assets/branding/logo.pngyarn splashGenerate splash screen from src/assets/branding/splash.png✅ RequirementsNode.js >=18YarnXcode (for iOS builds)Android Studio (for Android builds)📝 LicenseMIT © [Areez Mahmood]
***
Would you like to double-check anything else in the boilerplate setup (like ensuring the `template.config.js` is perfectly aligned with `0.83.2`) before you run `npm publish`?