9 Project Layout

screenshot of 9 Project Layout

A boilerplate for React Native packages with native code

Overview

The 9-project layout is an innovative boilerplate crafted for developing distributable React Native components that include native code for both iOS and Android platforms. This setup significantly simplifies the process of creating, testing, and integrating components, making it ideal for developers looking to leverage native functionalities within their applications. With features such as automated testing, this boilerplate ensures that your components are robust, efficient, and easy to manage.

By providing a clear structure for both the component code and the associated tests, the boilerplate streamlines development workflows. You’ll find everything you need in one place, from a simple HelloWorld component to comprehensive unit and integration tests, thereby promoting best practices in React Native development.

Features

  • Distributable Components: Easily create reusable React Native components with native code for both iOS and Android, supporting rapid development.

  • Automated Testing: Includes built-in unit tests for native code and integration tests for a thorough validation of component functionality on emulators or devices.

  • Simple Setup: Quick installation and linking via npm allows developers to get started with minimal hassle.

  • Multi-Project Structure: Organized into three distinct project sets (JS, Obj-C & Java) for component code, tests, and sample projects, offering clarity and easy navigation.

  • Native Code Editing: Provides the ability to edit both native code and unit tests side-by-side using XCode for iOS and Android Studio, enhancing productivity.

  • Convenient Development Setup: The boilerplate allows for direct development in test projects while managing dependencies effectively, catering to various testing needs.

  • Integration Testing: Even though the Android side lacks automated runners for integration tests, manual execution through the React Native app still provides reliable testing options.

  • Example Usage: The provided example folder offers a practical demonstration of component usage, making it easy to see how everything fits together.