
9/29/2021
What this post added
This post details the implementation of a monorepo strategy for React Native packages at Shopify. It covers the considerations for choosing a monorepo over a multi-repo approach, focusing on reduced maintenance costs and lower entrance barriers. The setup details include using TypeScript with project references, Yarn Workspaces, and Lerna for publishing. It also describes custom configurations for Babel and Metro to support hot-reloading and cross-package referencing within a fixture app. The post further elaborates on code generation using PlopJS for new packages and auto-generated documentation with Gatsby, and outlines the release process using Lerna with pre- and version lifecycle scripts.