Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

standard-monorepo

Package Overview
Dependencies
Maintainers
1
Versions
46
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

standard-monorepo

[![oclif](https://img.shields.io/badge/cli-oclif-brightgreen.svg)](https://oclif.io) [![Version](https://img.shields.io/npm/v/standard-monorepo.svg)](https://npmjs.org/package/standard-monorepo) [![Downloads/week](https://img.shields.io/npm/dw/standard-mo

  • 0.3.1
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
11K
increased by1.68%
Maintainers
1
Weekly downloads
 
Created
Source

standard-monorepo

oclif Version Downloads/week License

Goal

The goal is to create a library that will help you and your team manage js monorepos. We assume that you run github flow with rebase enabled and provide everything available in the CLI programatically.

standard-monorepo should be all you need to run a js monorepo effectively, no need to setup commitlint, fiddle with lerna and optimise CI environments.

Roadmap v1

  • Conventional commits Also supports a "--scope" flag and validates against a JIRA ticket number

    • Lint (Similar to commitlint, without the configuration)
      $ standard-monorepo commit "feat: did things"
      > [SUCCESS] Commit message meets the conventional commit standard
      
      $ standard-monorepo commit "did things"
      ›   Error: [FAIL]
      ›
      ›   ####################################
      ›   did things
      ›   ####################################
      ›
      ›
      ›   Make sure you follow the conventional commit format and provide the correct scope flag for your needs.
      
    • Prompt (Similar to commitizen, without the configuration)
  • Detect packages (yarn workspaces glob)

  • Circular Dependencies

    • Find circular dependencies
    • "--max" and "--maxTotalPaths" flags to prevent addicional circular dependencies or paths being introduced (if below they will output warnings instead of a failure)
    $ standard-monorepo circular-deps --max=1 --maxTotalPaths=55
    
    Found 2 circular dependencies in the project, please fix these as soon as possible.
    
        |> Maximum circular dependencies allowed is 1 "--max", found: 2
    
        |> Maximum circular dependencies *paths* allowed is 55 "--maxTotalPaths", found: 5
    
        #######################################################################
    
        |> foo ->
            bar ->
    
    
        |> a ->
            b ->
             c ->
    
  • Print what packages have changed since a git ref (Similar to lerna changed --since=main), ideally using merge-base --fork-point as default

  • CI helpers (github actions / gitlab ci / circle ci / etc) so that we only build/test what has changed

  • Run command (Similar to lerna exec "echo hello" --stream and lerna exec "echo hello" --parallel)

  • Watch command (Something that doesn't exist in the ecosystem at the moment)

  • Publish (Similar to lerna publish --conventional-commits)

Usage

$ npm install -g standard-monorepo
$ standard-monorepo COMMAND
running command...
$ standard-monorepo (-v|--version|version)
standard-monorepo/0.3.1 darwin-x64 node-v14.15.1
$ standard-monorepo --help [COMMAND]
USAGE
  $ standard-monorepo COMMAND
...

Commands

standard-monorepo circular-deps

USAGE
  $ standard-monorepo circular-deps

OPTIONS
  -h, --help                     show CLI help
  --max=max                      maximum allowed individual circular dependencies
  --maxTotalPaths=maxTotalPaths  maximum allowed circular dependencies paths

EXAMPLES
  $ standard-monorepo circular-deps
  $ standard-monorepo circular-deps --max=5 --maxTotalPaths=10 # default is 0 for both

See code: src/commands/circular-deps.ts

standard-monorepo commit [COMMIT]

USAGE
  $ standard-monorepo commit [COMMIT]

ARGUMENTS
  COMMIT  The commit message

OPTIONS
  -h, --help   show CLI help
  -s, --scope  should include scope in the commit message

EXAMPLES
  $ standard-monorepo commit # this will create a prompt like commitizen
  $ standard-monorepo commit --scope # this will create a prompt like commitizen
  $ standard-monorepo commit "feat: did things"
  $ standard-monorepo commit "feat!: did things"
  $ standard-monorepo commit "feat(ABC-123): did things" --scope
  $ standard-monorepo commit "feat!(ABC-123): did things" --scope
  "husky": {
     "hooks": {
       "commit-msg": "standard-monorepo commit $HUSKY_GIT_PARAMS"
     }
  }

See code: src/commands/commit.ts

standard-monorepo help [COMMAND]

USAGE
  $ standard-monorepo help [COMMAND]

ARGUMENTS
  COMMAND  command to show help for

OPTIONS
  --all  see all commands in CLI

See code: @oclif/plugin-help

standard-monorepo list

USAGE
  $ standard-monorepo list

OPTIONS
  -h, --help   show CLI help
  --only=only  [default: name,version,private,location] fields to return for each package

EXAMPLES
  $ standard-monorepo list
  $ standard-monorepo list >> list.json
  $ standard-monorepo list --only="name,version,private,location"
  $ standard-monorepo list 
  --only="name,version,private,location,dependencies,devDependencies,peerDependencies,optionalDependencies"

See code: src/commands/list.ts

FAQs

Package last updated on 08 Dec 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc