Skip to content

Victor-Zarzar/react-native-boilerplate

Repository files navigation

React Native Boilerplate

React Native Expo Expo SDK 55 TypeScript Expo Router NativeWind Bun GitHub Actions

React Native boilerplate powered by Expo Router, NativeWind, and React Native Reusables. Not production-ready yet — use as a starting point for your own project.


Tech Stack

Quick Start

Using Bun (Recommended)

bunx degit Victor-Zarzar/react-native-boilerplate my-app
cd my-app
bun install
bun run dev

Using npm

npx degit Victor-Zarzar/react-native-boilerplate my-app
cd my-app
npm install
npm run dev

Core Technologies

  • React Native – Cross-platform mobile framework
  • Expo SDK 55 – Development platform and tooling
  • Expo Router – File-based routing
  • TypeScript – Type-safe development
  • NativeWind – Tailwind CSS for React Native
  • React Native Reusables – Accessible UI component system

Key Features

  • Production-ready scalable structure
  • File-based routing with Expo Router
  • Dark mode support
  • Reusable component system preconfigured
  • Edge-to-edge support
  • New Architecture enabled (Fabric + TurboModules)
  • Cross-platform (iOS, Android, Web)
  • Fully compatible with Expo Go

Prerequisites

Before starting, ensure you have:

  • Node.js (v24+)
  • npm or Bun
  • Expo CLI
  • iOS Simulator (Mac) or Android Emulator
  • Git

Project Structure

react-native-boilerplate/
├── app/                     # Expo Router routes
│   ├── (tabs)/              # Tab navigation
│   ├── _layout.tsx          # Root layout
│   └── index.tsx            # Home screen
├── shared/
│   ├── components/          # Reusable UI components
│   │   └── ui/              # React Native Reusables
│   ├── constants/           # Constants and configs
│   ├── lib/                 # Utilities
│   └── global.css           # NativeWind global styles
├── assets/                  # Images and fonts
├── app.json                 # Expo configuration
├── package.json             # Dependencies
├── tailwind.config.js       # NativeWind config
├── tsconfig.json            # TypeScript config
└── babel.config.js          # Babel config

Usage

Start the development server:

bun run dev

or

npm run dev

Open the app:

  • Press i → iOS Simulator
  • Press a → Android Emulator
  • Press w → Web

Or scan the QR Code using Expo Go on your device.


Adding Components

npx react-native-reusables/cli@latest add input textarea

Install all components:

npx react-native-reusables/cli@latest add --all

Deployment

Using EAS (Recommended)

npm install -g eas-cli
eas login
eas build

Documentation:
https://docs.expo.dev/eas/


Contributing

  1. Fork the project
  2. Create your feature branch
  3. Commit your changes
  4. Push to the branch
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.


Author

Victor Zarzar - @Victor-Zarzar

Project Link: https://github.com/Victor-Zarzar/react-native-boilerplate


About

React Native boilerplate powered by Expo Router, NativeWind, and React Native Reusables. Not production-ready yet — use as a starting point for your own project.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors