Nostalgic Pickled Mango

    mrpm

    4.1.0 • Public • Published

    mrpm

    npm npm npm npm npm npm Build Status

    MonoRepo Package Manager.
    This is the CLI tool that runs the npm command for each monorepo projects.

    Inspired by mariuslundgard/monorepo.

    Why?

    It was created to execute a simple npm command in order of dependencies.

    Usage

    install

    npm i -D mrpm

    Example of dir & package.json

    pkgroot
    +--packages
    |  +--subpkg1
    |  |  `--package.json
    |  `--subpkg2
    |     `--package.json
    `--package.json
    

    pkgroot/package.json

    {
      //...
      "private": true,
      //...
      "scripts": {
        "test": "mrpm run test",
        "build": "mrpm run build",
        //...
      },
      //...
    }

    pkgroot/packages/subpkg1/package.json or
    pkgroot/packages/subpkg2/package.json

    {
      // If `private` is set to `true`, it will be excluded from `publish`
      // "private": true,
      //...
      "scripts": {
        "test": "...",
        "build": "...",
        //...
      },
      //...
    }

    Example of commands

    • npm install for each monorepo projects.
    mrpm install
    • npm update for each monorepo projects.
    mrpm update
    • npm publish for each monorepo projects.
    mrpm publish
    • npm run script for each monorepo projects.
    mrpm run xxx
    • npm prune for each monorepo projects.
    mrpm prune

    Options

    • --mrpm-max-workers=<num>

    Specifies the maximum number of workers the worker-pool will spawn for running commands.

    Example of Deploy with Travis CI.

    files

    • package.json
    • .travis.yml
    • deploy.sh

    package.json

    {
      //...
      "private": true,
      //...
      "scripts": {
        //...
        "publish:all": "mrpm publish",
        //...
      },
      "devDependencies": {
        "mrpm": "x.x.x"
      }
    }

    .travis.yml

    language: node_js
    node_js:
      - "node"
    
    deploy:
      provider: script
      script: sh $TRAVIS_BUILD_DIR/deploy.sh

    deploy.sh

    #!/usr/bin/env bash
    
    npm config set //registry.npmjs.org/:_authToken $NPM_TOKEN
    npm run publish:all

    Install

    npm i mrpm

    DownloadsWeekly Downloads

    49

    Version

    4.1.0

    License

    MIT

    Unpacked Size

    26.5 kB

    Total Files

    18

    Last publish

    Collaborators

    • ota-meshi