
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
@exploreimpact/node-vault
Advanced tools
TypeScript ESM CLI and library for encrypting/decrypting files similar to Ansible Vault.
A TypeScript ESM CLI and library to encrypt/decrypt files with a password, inspired by Ansible Vault.
Features:
node-vault.config.js or node-vault.config.tsImportant: Add your password.txt to .gitignore and run the encryption on a git commit-hook to avoid committing secrets.
npm install --save-dev @exploreimpact/node-vault
Or globally:
npm install -g @exploreimpact/node-vault
Create a node-vault.config.js or node-vault.config.ts in your project root:
// node-vault.config.js
export default {
vaultDir: './vault', // Path to the directory containing files to encrypt/decrypt
passwordFilepath: './password.txt', // Path to the password file
};
The password file should contain the password on the first line:
a-random-password-string
Tip: Ensure password.txt is in your .gitignore.
node-vault help
node-vault encrypt [filepath] [passwordFilepath]
node-vault decrypt [filepath] [passwordFilepath]
node-vault init
filepath provided, otherwise encrypt all files in vaultDirfilepath provided, otherwise decrypt all files in vaultDirpassword.txt with a random passwordBy default, the CLI looks for node-vault.config.js/.ts and password.txt in the current working directory. You can override the password file by passing passwordFilepath as the second argument to encrypt/decrypt.
Import from the package (ESM only):
import { encryptData, decryptData } from 'node-vault';
Encrypted files start with:
NODE-VAULT v1
followed by base64-encoded JSON containing the algorithm, salt, IV, auth tag, and ciphertext. This allows safe in-place encryption of any plaintext file.
npm run buildnpm testnpm run lintnpm run formatThis project uses TypeScript with full ESM, Jest for tests, ESLint for linting, and Prettier for formatting.
To release a new package version, bump the version inside the package.json. A GitHub workflow will automatically create a GitHub release and publish to npm.
FAQs
TypeScript ESM CLI and library for encrypting/decrypting files similar to Ansible Vault.
We found that @exploreimpact/node-vault demonstrated a healthy version release cadence and project activity because the last version was released less than 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
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.