Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
standard-monorepo
Advanced tools
[![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
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.
Conventional commits Also supports a "--scope" flag and validates against a JIRA ticket number
$ 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.
Detect packages (yarn workspaces glob)
Circular Dependencies
$ standard-monorepo circular-deps --max=1 --max-total-paths=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 "--max-total-paths", found: 5
#######################################################################
|> foo ->
bar ->
|> a ->
b ->
c ->
Print what packages have changed since a git ref. See standard-monorepo list
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
)
$ npm install -g standard-monorepo
$ standard-monorepo COMMAND
running command...
$ standard-monorepo (-v|--version|version)
standard-monorepo/0.6.1-canary.35.1619fde.0 linux-x64 node-v12.22.7
$ standard-monorepo --help [COMMAND]
USAGE
$ standard-monorepo COMMAND
...
standard-monorepo cache-key
standard-monorepo circular-deps
standard-monorepo commit [COMMIT]
standard-monorepo help [COMMAND]
standard-monorepo list
standard-monorepo cache-key
USAGE
$ standard-monorepo cache-key
OPTIONS
-h, --help show CLI help
--cwd use the context from where the command was run to determine root of the monorepo
--github print github actions output
EXAMPLES
$ standard-monorepo cache-key # 93ead503b3bc9b08c2e07da10ef34162
$ standard-monorepo cache-key --cwd # 93ead503b3bc9b08c2e07da10ef34162
$ standard-monorepo cache-key --github # ::set-output name=cacheKey::{env.PREFIX}-93ead503b3bc9b08c2e07da10ef34162
- name: Get nodemodules cache key
id: cache-key
shell: bash
run: npx standard-monorepo cache-key
env:
PREFIX: ubuntu-latest-node-14.16.0
See code: src/commands/cache-key.ts
standard-monorepo circular-deps
USAGE
$ standard-monorepo circular-deps
OPTIONS
-h, --help show CLI help
--max=max maximum allowed individual circular dependencies
--max-total-paths=max-total-paths maximum allowed circular dependencies paths
EXAMPLES
$ standard-monorepo circular-deps
$ standard-monorepo circular-deps --max=5 --max-total-paths=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
--[no-]fork-point list all packages that have changed since a fork point, using "git merge-base --fork-point
$YOUR_REF"
--nodes list a representation of the dependency graph
--only=only [default: name,version,private,location] fields to return for each package
--since=since list all packages that have changed since a git ref
EXAMPLES
$ standard-monorepo list
$ standard-monorepo list >> list.json
$ standard-monorepo list --only="name,version"
[
{
"name": "a",
"version": "1.0.0"
},
{
"name": "b",
"version": "1.0.0"
},
{
"name": "c",
"version": "1.0.0"
}
]
$ standard-monorepo list
--only="name,version,private,location,dependencies,devDependencies,peerDependencies,optionalDependencies"
$ standard-monorepo list --nodes # Shows all packages and their dependencies in an indexed table
$ standard-monorepo list --since=gitsha --only=name,version --no-fork-point
$ standard-monorepo list --since=$(git merge-base --fork-point main)
$ standard-monorepo list --since=main --fork-point # same as above
$ standard-monorepo list --since=main # same as above as --fork-point default is true
See code: src/commands/list.ts
FAQs
[![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
We found that standard-monorepo demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
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.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.