Demo library showcasing Release Please automation for NPM package publishing.
- ✅ PR-based release workflow using Google's Release Please
- ✅ Automatic changelog generation from conventional commits
- ✅ GitHub native integration with manifest-based configuration
- ✅ Feature branch publishing with custom NPM dist-tags
- ✅ Automatic cleanup of feature branch aliases
import { hello } from 'npm-demo-release-please';
console.log(hello('World')); // "Hello, World!"
- Commits are made using conventional commit messages
- Release Please analyzes commits and creates a release PR
- When the release PR is merged, a new version is automatically published
Pushes to feature/**
or feat/**
branches publish pre-release versions with branch-specific NPM tags.
This project follows Conventional Commits:
-
feat:
- New features (minor version bump) -
fix:
- Bug fixes (patch version bump) -
feat!:
orBREAKING CHANGE:
- Breaking changes (major version bump)
-
Feature Release:
feat: add new greeting function
-
Bug Fix:
fix: handle empty name parameter
-
Breaking Change:
feat!: change function signature
-
Feature Branch: Push to
feature/awesome-feature
→ Published asnpm-demo-release-please@1.0.0-feature-awesome-feature-1
- Make commits using conventional commit format
- Release Please bot creates/updates a release PR
- Review and merge the release PR
- Package is automatically published to NPM
This demo repository is featured in the comprehensive guide: "The Ultimate Guide to NPM Release Automation: Semantic Release vs Release Please vs Changesets" - a detailed comparison of different NPM release automation tools with practical examples.