@alarife/common
v0.7.0
Published
Alarife proyect utilities
Downloads
34
Readme
alarife-common
Collection of CLI utilities for Node.js monorepos / workspaces: add license headers, copy structures, and deploy local packages with yalc.
Spanish version: README.ES.md
Installation
npm i -D alarife-commonRun without prior install:
npx alarife-common <command> [args]
# or
npx common <command> [args]Supported commands: add-license, copy, deployment-yalc.
add-license
Inserts a standard license header at the start of files across one or multiple projects. Only adds it if it is not already present.
Flags:
--path=<path>Container path holding multiple projects (searches subdirectories withpackage.json).--project-name=<name>Package name (required if using a path without a package.json).--project-author=<author>Author name (required if using a path without a package.json).--project-license=<license>License id (required if using a path without a package.json).--ext=.js,.tsComma-separated list. Default.js.
Examples:
# All folders must have a package.json
npx alarife-common add-license --path=./packages --ext=.ts
# Single project (.ts and .js), the _ are replaced by spaces
npx alarife-common add-license --path=./utils/lib --project-name=@bigbyte/utils --project-author=Jose_Eduardo_Soria --project-license=Apache_2.0 --ext=.ts,.jscopy
Recursively copies directories (deep) or a single file.
Usage:
npx alarife-common copy <source> <destination>Behavior:
- Creates destination directories if they do not exist.
- Overwrites existing files.
- If source is a file and destination is a folder, keeps the original filename.
- If source is a folder, replicates the entire structure.
Examples:
# Copy a single file
npx alarife-common copy ./templates/README.base.md ./packages/pkg-a/README.md
# Recursively copy a folder
npx alarife-common copy ./templates/component ./packages/ui-lib/src/componentdeployment.yalc
Automates actions over all subdirectories that contain a package.json in the current path.
Arguments (triggered if present):
installRunsnpm installin each package.publishRunsnpm run yalc:publishin each package.
Requirements:
- Each package must define in its
package.jsonthe script:{ "scripts": { "yalc:publish": "yalc publish" } } - Have
yalcavailable (global or vianpx).
Examples:
# Install dependencies
npx alarife-common deployment.yalc install
# Publish to yalc
npx alarife-common deployment.yalc publish
# Install then publish
npx alarife-common deployment.yalc install publishLicense
This project is licensed under the ISC License. See the LICENSE file for details.
Built with ❤️ by Jose Eduardo Soria Garcia
Part of the BigByte ecosystem
