This repository serves as a Copier template designed to generate a scaffolding project that allows to simultaneously develop on multiple repositories. This metarepo will, then, allow you to clone a list of independent repositories under the package
folder and will create with Lerna.js the needed links so a change in repository x
will be visible by repository y
.
This is particularly useful for JavaScript and TypeScript based projects, and we use it at Datalayer to simultaneously develop on many JupyterLab extensions (mixed Typescript and Python repositories).
Note
While the current version does not include features related to git submodule
, ongoing discussions about this enhancement can be found here.
The following section provides a step-by-step guide on how to generate your scaffolding project.
Ensure that Copier (copier
and copier-templates-extensions
) is correctly installed by following the instructions in the official documentation. You will e.g. pip install the packages with the following command.
pip install copier copier-templates-extensions
Generate the project using the command provided below. Be sure to replace <path/to/desired/location>
with your chosen project location.
copier copy --trust https://github.com/datalayer/metarepo.git <path/to/desired/location>
This command initiates a series of prompts to configure the project based on your preferences.
Complete the setup of your scaffolding project by referring to the instructions outlined in the README of the newly generated project.
Happy metarepo! 🚀