mind-release
v1.1.2
Published
A powerful interactive CLI for preparing, validating, versioning and publishing NodeJS packages to npm.
Maintainers
Readme
mind-release
🚀 A powerful interactive CLI for preparing, validating, versioning and publishing NodeJS packages to npm.
mind-release is an advanced NodeJS CLI developed by MindDevelopment for developers who want a clean, safe and professional way to release their NodeJS projects to the npm registry.
Instead of manually running a long sequence of npm commands, mind-release provides one interactive interface where you can inspect your project, validate your package.json, check what will be published, manage versions, create releases and publish directly to npm.
Features
- 📦 Package Management — detect and display package information.
- 🔍 Pre-Release Validation — full project health check before publishing.
- 🔢 Version Management — patch, minor, major, prerelease or custom versions.
- 👀 Package Preview — see exactly what npm will receive (
npm pack --dry-run). - 📦 Create Package Archive — generate a
.tgzfile. - 🔐 npm Authentication — check, login, set/remove access token, registry management.
- 🌿 Git Integration — branch, status and latest commit.
- 🔒 Security Checks — blocks
.env, secrets and sensitive files. - 🧪 Test & Build Support — run tests and builds before releasing.
- 🧪 Dry Run — complete release simulation without publishing.
- 🏷 npm Tags & Access —
latest,beta,alpha, public/restricted. - 📜 Release History — stored in
.mind-release/history.json. - ⚙ Configuration — interactive settings manager.
- 🤖 CI/CD Mode — non-interactive mode for automation.
Installation
npm install -g mind-releaseOr run locally:
npm run startUsage
mind-release # Open interactive mode
mind-release check # Run pre-release validation
mind-release info # Show package information
mind-release preview # Preview npm package contents
mind-release pack # Create a .tgz archive
mind-release version patch # Bump patch version
mind-release version minor # Bump minor version
mind-release version major # Bump major version
mind-release version 2.0.0 # Set an exact version
mind-release publish # Start the publishing workflow
mind-release publish --tag beta # Publish with a custom tag
mind-release publish --otp 123456 # Publish with a one-time password (2FA)
mind-release publish --type minor # Bump the version before publishing
mind-release publish --new-version 2.0.0 # Publish an exact version
mind-release publish --dry-run # Simulate publishing
mind-release publish --ci # Non-interactive CI mode
mind-release auth # Check npm authentication
mind-release git # Show Git status
mind-release config # Open configuration
mind-release history # Show release history
mind-release --help # Show help
mind-release --version # Show versionEnvironment Variables
| Variable | Description |
| --- | --- |
| NPM_RELEASE_REGISTRY | Override the npm registry |
| NPM_RELEASE_TAG | Default publish tag |
| NPM_RELEASE_ACCESS | Default access (public/restricted) |
| NPM_RELEASE_SKIP_TESTS | Set true to skip tests |
| NPM_RELEASE_SKIP_BUILD | Set true to skip the build |
| NPM_RELEASE_OTP | One-time password for npm 2FA |
| NPM_RELEASE_CI | Set true for CI mode |
Safety
- Never publishes without explicit confirmation (interactive mode).
- Never stores npm passwords or tokens.
- Warns about
.envand sensitive files. - Blocks dangerous conditions by default.
- Supports full dry-run mode.
Development
npm install
npm testProject Structure
mind-release/
├── src/
│ ├── cli/ # banner, prompts, menu
│ ├── commands/ # check, info, pack, publish, version, auth, git, config, history
│ ├── checks/ # validation checks
│ ├── npm/ # registry, auth, pack, publish
│ ├── git/ # status, commits, branch
│ ├── config/ # manager, defaults
│ ├── utils/ # exec, files, semver, logger, format
│ └── index.js # CLI entry point
├── tests/ # automated tests
├── .gitignore
├── .npmignore
├── CHANGELOG.md
├── LICENSE
└── README.mdLicense
MIT License — Copyright © MindDevelopment.
