New:Introducing Socket Scanning for VS Code Marketplace Extensions.Learn more →
Get Started

releeease

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

releeease

Universal release CLI - composable, pluggable, configurable. Wraps changeset with better UX.

latest
Source
npmnpm
Version
0.0.2
Version published
Maintainers
1
Created
Source

releeease

Universal release CLI - composable, pluggable, configurable. Wraps changeset with better UX.

Features

  • Resumable - If a step fails, re-run and it continues from where it left off
  • Idempotent - Each step verifies if already done before running
  • Pluggable - Enable/disable/reorder steps via config
  • Hooks - Run custom scripts at key points
  • Zero repo files - State stored in ~/.releeease/, not your project
  • Rollback - Undo failed releases

Install

pnpm add -D releeease
# or globally
pnpm add -g releeease

Usage

# Run release (or resume if one is in progress)
releeease

# Version bump options
releeease --patch    # Patch release (default)
releeease --minor    # Minor release
releeease --major    # Major release
releeease --auto     # Auto-detect from commits

# Other options
releeease --dry-run  # Preview without changes
releeease --yes      # Skip confirmation prompts
releeease --verbose  # Verbose output

# Run specific step
releeease --step build
releeease --from version

# Commands
releeease status     # Show release progress
releeease rollback   # Undo failed release
releeease init       # Create .releaserc config

Config

Create .releaserc in your project:

{
  "bump": "patch",
  "branch": "main",
  "steps": [
    "preflight",
    "init",
    "commits",
    "changeset",
    "build",
    "version",
    "commit",
    "publish",
    "push",
    "github",
    "cleanup"
  ],
  "edit": false,
  "confirm": true,
  "hooks": {
    "pre:release": "./scripts/pre-release.js",
    "post:release": "./scripts/notify-slack.js",
    "pre:publish": "./scripts/pre-publish.js",
    "post:publish": "./scripts/post-publish.js"
  }
}

Or use release.config.js for dynamic config:

export default {
  bump: 'auto',
  steps: ['preflight', 'init', 'commits', 'changeset', 'build', 'version', 'commit', 'publish', 'push', 'github', 'cleanup']
};

Steps

StepDescription
preflightCheck npm login, gh auth, uncommitted changes, commits to release
initInitialize release state, detect bump type
commitsShow commits since last release
changesetCreate changeset file from commits
buildRun pnpm build
versionRun pnpm changeset version to bump version
commitCommit with 🚀 RELEASE: vX.X.X
publishRun pnpm changeset publish to npm
pushPush commits and tags
githubCreate GitHub release with changelog link
cleanupClear release state

Hooks

Hooks are JavaScript files that export a function:

// scripts/notify-slack.js
export default async function({ config, state, cwd }) {
  console.log(`Released ${state.version}!`);
  // Send Slack notification, etc.
}

State

Release state is stored in ~/.releeease/state/<project-hash>/:

  • state.json - Current release progress
  • lock - Prevents concurrent releases

No files are created in your project directory.

Requirements

  • Node.js >= 18
  • @changesets/cli installed in your project
  • gh CLI for GitHub releases (optional)

License

MIT

Keywords

release

FAQs

Package last updated on 27 Jan 2026

Related posts