@ibi-dev/rn-init
v1.0.1
Published
Scaffold a production-ready React Native 0.86 app preconfigured with React Navigation, Redux Toolkit, Redux Saga and TypeScript.
Downloads
318
Maintainers
Readme
🚀 rn-init
Scaffold a production-ready React Native 0.86 application with React Navigation, Redux Toolkit, Redux Saga, Redux Persist, TypeScript, and a clean folder structure using a single command.
One command. Ready to code.
npx @ibi-dev/rn-init MyApp✨ Features
- ⚛️ React Native 0.86
- 🔤 TypeScript configured
- 🧭 React Navigation (Native Stack)
- 🗃️ Redux Toolkit
- ⚡ Redux Saga
- 💾 Redux Persist
- 🌐 Axios API service setup
- 📂 Scalable folder structure
- 🧹 ESLint & Prettier
- 🧪 Jest configuration
- 📱 Android & iOS project auto-renaming
- 🌱 Git repository initialization
- 📦 Supports npm, Yarn, and pnpm
- 🍎 Automatically runs
pod installon macOS
📋 Prerequisites
Before using rn-init, ensure your React Native development environment is configured.
Follow the official React Native setup guide:
https://reactnative.dev/docs/set-up-your-environment
Recommended versions:
| Tool | Version | | -------------- | -------------- | | Node.js | 22.11+ | | Java (JDK) | 17 | | Android Studio | Latest | | Xcode | Latest (macOS) | | CocoaPods | Latest (macOS) |
🚀 Create a New Project
npx @ibi-dev/rn-init MyAppThat's it.
The CLI will automatically:
- ✅ Create a new React Native project
- ✅ Copy the starter template
- ✅ Rename Android & iOS projects
- ✅ Update Bundle Identifier
- ✅ Install dependencies
- ✅ Initialize Git
- ✅ Run CocoaPods (macOS)
📦 After Creation
cd MyApp
npm start
npm run android
npm run ios⚙️ CLI Options
| Option | Description |
| ------------------------ | ---------------------------------- |
| --skip-install | Skip dependency installation |
| --skip-pods | Skip CocoaPods installation |
| --no-git | Do not initialize a Git repository |
| --use-npm | Use npm |
| --use-yarn | Use Yarn |
| --use-pnpm | Use pnpm |
| --package-manager <pm> | Specify npm, yarn or pnpm |
| -h, --help | Show help |
| -v, --version | Show version |
Example:
npx @ibi-dev/rn-init MyApp --skip-installUsing Yarn:
npx @ibi-dev/rn-init MyApp --use-yarnUsing pnpm:
npx @ibi-dev/rn-init MyApp --use-pnpm📁 Generated Folder Structure
MyApp/
├── android/
├── ios/
├── src/
│ ├── components/
│ ├── navigation/
│ ├── redux/
│ │ ├── sagas/
│ │ ├── slices/
│ │ └── store.ts
│ ├── screens/
│ ├── services/
│ └── utils/
├── App.tsx
├── app.json
├── index.js
├── package.json
└── tsconfig.json🔄 Automatic Configuration
During project generation, rn-init automatically:
- Renames the React Native application
- Renames the Android package
- Renames the iOS project
- Updates the Bundle Identifier
- Updates the Display Name
- Updates
package.json - Installs dependencies
- Initializes Git
- Runs
pod install(macOS)
No manual configuration is required.
🛠️ Troubleshooting
Project directory already exists
Choose another project name or delete the existing directory.
Invalid project name
Examples of valid names:
MyApp
my-app
awesome-appAvoid spaces and special characters.
Dependency installation failed
Run manually:
npm installinside the generated project.
CocoaPods failed
cd ios
pod install
cd ..🤝 Contributing
Contributions are welcome!
- Fork the repository.
- Create a feature branch.
- Test the CLI locally.
node bin/index.js DemoApp --skip-installor
npm link
rn-init DemoApp- Run:
npm pack --dry-runto verify the package contents.
- Submit a Pull Request.
📄 License
MIT License
🌟 Support
If you find rn-init useful, please consider:
- ⭐ Starring the repository
- 🐛 Reporting issues
- 💡 Suggesting new features
- 🤝 Contributing improvements
GitHub Repository:
https://github.com/ibrahimpc/npm-rn-starter
npm Package:
https://www.npmjs.com/package/@ibi-dev/rn-init
Happy coding! 🚀
