Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/azu/monorepo-utils
A collection of utilities for monorepo/lerna. Tools for TypeScript project references etc..
https://github.com/azu/monorepo-utils
javascript lerna monorepo npm typescript yarn
Last synced: 5 days ago
JSON representation
A collection of utilities for monorepo/lerna. Tools for TypeScript project references etc..
- Host: GitHub
- URL: https://github.com/azu/monorepo-utils
- Owner: azu
- Created: 2018-07-19T09:07:44.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-11-14T10:08:22.000Z (12 months ago)
- Last Synced: 2024-10-23T03:27:21.482Z (12 days ago)
- Topics: javascript, lerna, monorepo, npm, typescript, yarn
- Language: TypeScript
- Homepage:
- Size: 1.01 MB
- Stars: 164
- Watchers: 5
- Forks: 10
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: .github/CONTRIBUTING.md
Awesome Lists containing this project
README
# monorepo-utils [![Actions Status: test](https://github.com/azu/monorepo-utils/workflows/test/badge.svg)](https://github.com/azu/monorepo-utils/actions?query=workflow%3A"test")
This repository is utilities for monorepo.
Also, this repository is a monorepo.## Packages
### [@monorepo-utils/package-utils](./packages/@monorepo-utils/package-utils)
Collect package file path in the monorepo.
Supports following package manager's workspaces.
- Lerna(`lerna.json`)
- Yarn's workspaces
- npm v7+'s workspaces### [@monorepo-utils/workspaces-to-typescript-project-references](./packages/@monorepo-utils/workspaces-to-typescript-project-references)
This tool converts lerna/npm workspaces/yarn workspaces to [TypeScript's Project References](https://www.typescriptlang.org/docs/handbook/project-references.html).
You can keep package dependencies synchronized between lerna/npm/yarn workspaces and TypeScript.
### [@monorepo-utils/collect-changelog](./packages/@monorepo-utils/collect-changelog)
[@monorepo-utils/collect-changelog](./packages/@monorepo-utils/collect-changelog) get change from each package's `CHANGELOG.md`.
It help to collect changelog in lerna's [Independent mode](https://github.com/lerna/lerna#independent-mode---independent).### [@monorepo-utils/get-workspaces-cli](./packages/@monorepo-utils/get-workspaces-cli)
[@monorepo-utils/get-workspaces-cli](./packages/@monorepo-utils/get-workspaces-cli) is a simple CLI for getting workspace list.
It allows get file path of packages.```shell
$ npx @monorepo-utils/get-workspaces-cli
```## Deprecated Packages
### **Deprecated**
[@monorepo-utils/publish](./packages/@monorepo-utils/publish)[@monorepo-utils/publish](./archives/publish) help npm publish.
This script split `lerna publish`(lerna 2) into versioning and publishing.
:warning: Notes:
lerna 3 support `lerna version` and `lerna publish`.
You should use lerna 3 directly.## Release Flow
1. Create Release PR via dispatching "Create Release" action
2. Review and Merge release PR
3. PublishedSee also:
- [azu/monorepo-github-releases: monorepo release flow: lerna + GitHub Release's Automatically generated release notes](https://github.com/azu/monorepo-github-releases)