This is a lightweight open source framework for managing mono repositories. The source code is available on GitHub where you can also find our issue tracker.
Start by installing the monpo command-line tool.
$ npm install -g @monpo/cli
It's a good practice that we split a large codebase into multiple stand-alone packages. Managing all these pieces can be difficult that's why mono repositories are getting attention these days. The idea is to have only one repository for all the packages your project uses.
Monpo helps you manage mono repositories. It helps you configure and execute commands in multiple packages with a single command.
Start by creating a new project folder.
$ mkdir myProject
$ cd myProject
Initialize the project and install the dependencies.
$ monpo init
$ npm install
You should now create a directory for each package inside the packages
directory.
You can use the list
keyword to list all the packages in the repository.
$ monpo list
You can use the exec
keyword to run a command inside multiple packages. Use the --scope
attribute to include only specific packages.
$ monpo exec -- npm install
$ monpo exec -- npm test --scope package1
$ monpo exec -- npm publish
You can also use the configure
keyword to set properties for package.json
. Use the --scope
attribute to include only specific packages.
$ monpo configure --key version --value 1.0.1
$ monpo configure --key main --value src/index.ts --scope
Run monpo --help
for more.
Package | Description | Version |
---|---|---|
@monpo/cli | Command-line interface. | |
@monpo/init | Project initializer. | |
@monpo/core | Core library. |
See CONTRIBUTING.md for how to help out.
See LICENSE for details.