- React Navigation
- React Query
- i18next
- Zustand
- TypeScript
- Prettier
- ESLint
- Jest
- Axios
- React Native MMKV
- React Native Config
- React Native Bootsplash
- 📱 Latest React Native version, we are aware of the changes and improvements that RN Team is making and we are working to keep up with them.
- 📲 TypeScript to reduced bugs and improve code quality.
- 💾 VS Code Recommended Extensions to improve your development experience.
- 📋 Schemes: iOS custom schemes to build different environments.
- 🤖 Flavors for Android to build apps for different environments.
- ⚙️ React Native Config for environment variables.
- 🧑💻 Code Quality to format, lint, and test your code.
- 💻 Pre-commit actions to validate TypeScript code quality staged files and catch errors before committing.
- 🔧 Testing is done with Jest and React Native Testing Library.
- 🌍 Localization with i18next for localization.
- 💡 Dark Mode Support already implemented, as well as for the Splash Screen.
- 🚢 Navigation already configured.
- 🚀 Fast Folder Structure to boost the creation of new components.
- 📝 Custom scripts to bump build version using SemVer and to rename application.
Starting a react native project is often difficult and time consuming, because we need to set up a lot of dependencies and configurations, that almost every time would be the same or at least very similar for every project.
Here at Rootstrap we've been working and iterating over this project for a couple of years pulling together the best practices and tools to build high-quality React Native applications, and we think that this template will help you get started quickly and efficiently.
System Requirements:
- React Native Environment: Check official docs
- Clone the react-native-base repository:
$ git clone https://github.com/rootstrap/react-native-base
- Change to the project directory:
$ cd react-native-base
- Install the dependencies:
$ yarn install $ cd ios && pod install or $ npx pod-install
You can easily run and build both platforms using the commands below:
$ yarn ios:dev $ yarn ios:qa $ yarn ios:release:qa $ yarn android:dev $ yarn android:qa $ yarn android:release:qaCheck the package.json to see the full list of commands
Run the test suite using the command below:
$ yarn test
Bump the version of the application using the command below:
$ yarn bump
Here you will be prompted to select the environment and the version you want to bump.
Rename the application using the command below:
$ yarn rename
There's a folder named .fttemplates where you'll find a template to be used with the extension vscode-fast-folder-structure to create components faster.
Then, you can create components by clicking on the Create new templated folder button in the context menu.
Screen.Recording.2023-02-02.at.13.14.40.mov
These template is open source, and at the moment is being developed by the Rootstrap team. We are always looking for contributors to help us improve the project and make it even better.
Also, if you need to built a custom React Native application, you can contact us at rootstrap.com/contact to further discuss your project and how we can help you to achieve your goals.
Contributions are welcome! Here are several ways you can contribute:
- Report Issues: Submit bugs found or log feature requests for the
react-native-baseproject. - Submit Pull Requests: Review open PRs, and submit your own PRs.
- Join the Discussions: Share your insights, provide feedback, or ask questions.
Contributing Guidelines
- Fork the Repository: Start by forking the project repository to your github account.
- Clone Locally: Clone the forked repository to your local machine using a git client.
git clone https://github.com/rootstrap/react-native-base
- Create a New Branch: Always work on a new branch, giving it a descriptive name.
git checkout -b new-feature-x
- Make Your Changes: Develop and test your changes locally.
- Commit Your Changes: Commit with a clear message describing your updates.
git commit -m 'Implemented new feature x.' - Push to github: Push the changes to your forked repository.
git push origin new-feature-x
- Submit a Pull Request: Create a PR against the original project repository. Clearly describe the changes and their motivations.
- Review: Once your PR is reviewed and approved, it will be merged into the main branch. Congratulations on your contribution!
This project is protected under the MIT License. For more details, refer to the LICENSE file.
React Native Base is maintained by Rootstrap with the help of our contributors.