Built and signed on GitHub ActionsBuilt and signed on GitHub Actions
Generate secrets using a cryptographic random and mask secrets.
Overview
The secrets module provides a secret generator and a secret masker.
The secret generator uses a cryptographic random number generator (csrng) defaults to NIST requirements e.g length > 8, 1 upper, 1 lower, 1 digit, and 1 special character.
The secret masker works by adding secrets and variants to the masker and then it will replace the secret with '*********' which is useful to protect secrets from logs or CI/CD standard output.

Documentation
Documentation is available on jsr.io
A list of other modules can be found at github.com/bearz-io/js
Usage
import { DefaultSecretGenerator, secretMasker } from "@bearz/secrets"; import { equal } from "@bearz/assert" // secret generator / password generator const generator = new DefaultSecretGenerator(); generator.addDefaults(); console.log(generator.generate()); // csrng generated secret 16 chars console.log(generator.generate(30)); // csrng generated secret 30 chars // secret masker const masker = secretMasker; masker.addGenerator((secret: string) => { return secret.toUpperCase(); }); masker.add("super secret"); masker.add("another secret"); equal(masker.mask("super secret"), "*******"); equal(masker.mask("SUPER SECRET"), "*******"); equal(masker.mask("another secret"), "*******"); equal(masker.mask("ANOTHER SECRET"), "*******");
License
Add Package
deno add jsr:@bearz/secrets
Import symbol
import * as secrets from "@bearz/secrets";
Import directly with a jsr specifier
import * as secrets from "jsr:@bearz/secrets";
Add Package
pnpm i jsr:@bearz/secrets
pnpm dlx jsr add @bearz/secrets
Import symbol
import * as secrets from "@bearz/secrets";
Add Package
yarn add jsr:@bearz/secrets
yarn dlx jsr add @bearz/secrets
Import symbol
import * as secrets from "@bearz/secrets";
Add Package
vlt install jsr:@bearz/secrets
Import symbol
import * as secrets from "@bearz/secrets";
Add Package
npx jsr add @bearz/secrets
Import symbol
import * as secrets from "@bearz/secrets";
Add Package
bunx jsr add @bearz/secrets
Import symbol
import * as secrets from "@bearz/secrets";