callstack/reassure

RFC: move examples to separate repo

mdjastrzebski opened this issue · 1 comments

Describe the improvement
Currently the various examples for application for Reassure in RN, Next.js, Vite are all kept in the Reassure repo. This RFC proposes to move them to a separate repo for a number of reasons:

  1. Reassure examples rely on various frameworks (RN, Next.js, etc) that generate a large number of files. Having them in the main repo grows the repo size fast if these were to be updated frequently.
  2. These examples are not part of monorepo, i.e. they are not aware of shared dependencies between monorepo packages, and package hoisting. They act as if they are standalone repositories. Yet at occasions they come into unintended interactions been them and monorepo (due to Node.js module resolution algorithm) and other way around (due to various scripts being executed also inside them).
  3. Due to not using monorepo deps (due to frequent shared package version clashes between different frameworks), they are not taking part in the CI validation anyway. Only test-apps/native is actually part of CI validation. When moved to their own repo they could have a difference cadence of CI, e.g. weekly check against latest version of Reassure from npm, which could actually improve the checks functioning.

Scope of improvement
Moving examples out of main Reassure git repo, to a separate reassure-examples repo.

Suggested implementation steps

  1. Create a @callstack/reassure-examples git repository
  2. Move examples code to that respository
  3. Setup CI integration in that repository, based on aux CI script in the current repo.

I'm good with it. At the same time let's design a process for keeping it up to date with the library updates. E.g. by setting up automation to upgrade reassure deps in the examples