{"id":15077857,"url":"https://github.com/puvvl/react-native-boilerplate","last_synced_at":"2026-02-06T15:34:09.873Z","repository":{"id":256368799,"uuid":"855049454","full_name":"Puvvl/react-native-boilerplate","owner":"Puvvl","description":"React Native/Expo boilerplate","archived":false,"fork":false,"pushed_at":"2024-09-10T09:30:21.000Z","size":251,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-24T17:21:27.553Z","etag":null,"topics":["eslint","expo","firebase","firebase-auth","prettier","reactnative","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Puvvl.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"buy_me_a_coffee":"puvvl"}},"created_at":"2024-09-10T08:07:13.000Z","updated_at":"2024-09-10T09:30:25.000Z","dependencies_parsed_at":null,"dependency_job_id":"bc361de5-c2a9-428b-a626-e7bac8ab88de","html_url":"https://github.com/Puvvl/react-native-boilerplate","commit_stats":{"total_commits":4,"total_committers":2,"mean_commits":2.0,"dds":0.25,"last_synced_commit":"6c428dbcdf859abb060bf04837059fe8f7f613d8"},"previous_names":["puvvl/react-native-boilerplate"],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/Puvvl/react-native-boilerplate","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Puvvl%2Freact-native-boilerplate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Puvvl%2Freact-native-boilerplate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Puvvl%2Freact-native-boilerplate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Puvvl%2Freact-native-boilerplate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Puvvl","download_url":"https://codeload.github.com/Puvvl/react-native-boilerplate/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Puvvl%2Freact-native-boilerplate/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264384389,"owners_count":23599612,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["eslint","expo","firebase","firebase-auth","prettier","reactnative","typescript"],"created_at":"2024-09-25T04:33:10.729Z","updated_at":"2026-02-06T15:34:09.820Z","avatar_url":"https://github.com/Puvvl.png","language":"TypeScript","funding_links":["https://buymeacoffee.com/puvvl"],"categories":[],"sub_categories":[],"readme":"# React Native Boilerplate\n\nThis React Native boilerplate project is designed to accelerate your mobile app development by providing a robust starting point with built-in authentication, environment variable management, TypeScript support, and more. It includes essential tools and configurations to ensure a scalable and maintainable codebase.\n\n## Features\n\n- **Authentication**: Supports multiple authentication methods, including:\n  - Email and password\n  - Google Sign-In\n  - Apple Sign-In\n- **Environment Variables**: Managed with `react-native-dotenv` for secure and easy configuration.\n- **Navigation**: Integrated with React Navigation for smooth screen transitions and navigation flows.\n- **TypeScript**: Fully typed with TypeScript to ensure code quality and reduce runtime errors.\n- **Linting and Formatting**: Configured with ESLint and Prettier for consistent code style and automatic formatting.\n- **Path Aliases**: Simplifies imports using path aliases for better project structure and readability.\n- **Expo Development**: Supports Expo with custom development builds using `expo-dev-client` for native modules.\n\n## Prerequisites\n\n- [Node.js](https://nodejs.org/) (version 18 or later)\n- [Yarn](https://classic.yarnpkg.com/en/docs/install) (recommended for dependency management)\n- [Expo CLI](https://docs.expo.dev/get-started/installation/) for development builds and running the project\n- [EAS CLI](https://docs.expo.dev/build/setup/) for creating custom development builds\n\n\n## Getting Started\n\n### Installation\n\n1. **Clone the repository**:\n\n   ```bash\n   git clone https://github.com/Puvvl/react-native-boilerplate.git\n   cd react-native-boilerplate\n   ```\n\n2. **Install dependencies**\n\n  ```bash\n  yarn install\n  ```\n\n3. **Set up environment variables**\n\n  Create a .env file in the root directory with the necessary environment variables\n\n  \n\n    FIREBASE_API_KEY=your-api-key\n    FIREBASE_AUTH_DOMAIN=your-auth-domain\n    FIREBASE_PROJECT_ID=your-project-id\n    FIREBASE_STORAGE_BUCKET=your-storage-bucket\n    FIREBASE_MESSAGING_SENDER_ID=your-messaging-sender-id\n    FIREBASE_APP_ID=your-app-id\n    FIREBASE_MEASUREMENT_ID=your-measurement-id\n    EXPO_CLIENT_ID=your-expo-client-id\n    IOS_CLIENT_ID=your-ios-client-id\n    ANDROID_CLIENT_ID=your-android-client-id\n\n### Running the App\n\n1. **Start the development server**\n\n  ```bash\n  yarn start\n  ```\n\n2. **Create a development build with EAS**\n\n  For native modules, use EAS to create a development build\n\n  ```bash\n  eas build --profile development --platform all\n  ```\n\n  Install the generated build on your device and connect to the local dev server with\n\n  ```bash\n  yarn start --dev-client\n  ```\n\n## Available Scripts\n\n`yarn start`: Start the development server with Expo.\n\n`yarn android`: Run the app on an Android emulator or connected device.\n\n`yarn ios`: Run the app on an iOS simulator or connected device.\n\n`yarn lint`: Run ESLint to check for code style issues.\n\n`yarn lint:fix`: Run ESLint to fix for code style issues.\n\n`yarn format`: Run Prettier to format the code.\n\n## Environment Variables\n\nEnvironment variables are managed using `react-native-dotenv`. Make sure to add a `.env` file in the root directory and configure it according to your project’s requirements. The variables include keys for Firebase configuration and client IDs for Google sign-in.\n\n## Linting and Formatting\n\n**ESLint**: Configured with recommended rules for React Native, TypeScript, and Prettier integration.\n**Prettier**: Ensures consistent code formatting across the project.\n\n## Path Aliases\n\nPath aliases are set up to simplify imports and keep your code clean and maintainable. The aliases are defined in `babel.config.js` and `tsconfig.json` to ensure consistency across the project.\n\n\n## Contributing\n\nContributions are welcome! Please fork this repository and submit a pull request with your changes.\n\n## License\n\nThis complete README includes all the detailed setup and configuration instructions, code examples, and project information as requested. Feel free to adjust the details according to your specific project and repository. Let me know if there's anything else you'd like to add or modify!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpuvvl%2Freact-native-boilerplate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpuvvl%2Freact-native-boilerplate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpuvvl%2Freact-native-boilerplate/lists"}