This document explains how versioning works in ResponsiveKit and how to update versions properly.
ResponsiveKit follows Semantic Versioning 2.0.0 (SemVer):
MAJOR.MINOR.PATCH[-PRERELEASE][+BUILD]
- MAJOR (X.0.0): Breaking changes, incompatible API changes
- MINOR (0.X.0): New features, backward-compatible
- PATCH (0.0.X): Bug fixes, backward-compatible
- PRERELEASE (0.0.0-alpha.1): Pre-release versions
- BUILD (0.0.0+20130313): Build metadata (optional)
1.0.0- First stable release1.2.3- Version 1, feature set 2, patch 32.0.0- Major version with breaking changes0.1.0-beta.1- Beta release (current)0.1.0-alpha.1- Alpha release1.0.0-rc.1- Release candidate
Early development, unstable, missing features.
0.1.0-alpha.1
0.1.0-alpha.2
0.1.0-alpha.3
When to use:
- Initial development
- Core features incomplete
- API may change significantly
- Not recommended for production
Feature-complete, but may have bugs.
0.1.0-beta.1 (current)
0.1.0-beta.2
0.1.0-beta.3
When to use:
- All planned features implemented
- Testing and bug fixing phase
- API mostly stable
- Ready for user testing
- Not recommended for production
Final testing before stable release.
1.0.0-rc.1
1.0.0-rc.2
1.0.0-rc.3
When to use:
- No known critical bugs
- Final testing phase
- Only critical bug fixes allowed
- Ready for production if no issues found
0.1.0-beta.1 → 0.1.0-beta.2 → 0.1.0-rc.1 → 1.0.0
-
Alpha Phase (0.x.0-alpha.x)
- Core development
- Breaking changes allowed
- Internal testing
-
Beta Phase (0.x.0-beta.x) ← We are here
- Feature complete
- Bug fixes and polish
- User testing
- Minor API changes allowed
-
Release Candidate (x.x.x-rc.x)
- Final testing
- Only critical fixes
- Production-ready
-
Stable Release (x.x.x)
- Production-ready
- Follows SemVer strictly
Edit package.json:
{
"version": "0.1.0-beta.2"
}# Patch release (0.1.0 → 0.1.1)
npm version patch
# Minor release (0.1.0 → 0.2.0)
npm version minor
# Major release (0.1.0 → 1.0.0)
npm version major
# Pre-release versions
npm version prerelease --preid=beta # 0.1.0-beta.1 → 0.1.0-beta.2
npm version prerelease --preid=alpha # 0.1.0-alpha.1 → 0.1.0-alpha.2
npm version prerelease --preid=rc # 1.0.0-rc.1 → 1.0.0-rc.2
# Specific pre-release
npm version 0.2.0-beta.1
npm version 1.0.0-rc.1
npm version 1.0.0From current beta to next beta:
npm version prerelease --preid=beta
# 0.1.0-beta.1 → 0.1.0-beta.2From beta to release candidate:
npm version 0.1.0-rc.1
# 0.1.0-beta.2 → 0.1.0-rc.1From rc to stable:
npm version 0.1.0
# 0.1.0-rc.1 → 0.1.0From stable to next minor:
npm version minor
# 0.1.0 → 0.2.0Before updating version:
- All planned features implemented (for beta/rc)
- All tests passing
- Code formatted and linted (
pnpm check:fix) - Documentation updated
- CHANGELOG.md updated (if exists)
- Git working directory clean
- Review breaking changes (for major versions)
After updating version:
- Commit version change
- Create git tag:
git tag v0.1.0-beta.2 - Push commits:
git push - Push tags:
git push --tags - Build extension:
pnpm build - Create release zip:
pnpm zip - Test extension in browser
- Create GitHub release (optional)
The version in package.json is automatically used in the extension's manifest.json:
{
"version": "0.1.0",
"version_name": "0.1.0-beta.1"
}version: Numeric version (required by browsers)version_name: Display version (shows in browser)
WXT automatically handles this conversion.
- ✅ Core functionality working
- ✅ Toggle via extension icon
- ✅ Real-time breakpoint detection
- ✅ Animated info panel
- 🔄 User testing and feedback
- 🔄 Bug fixes
- All beta bugs fixed
- Performance optimization
- Final UI polish
- Documentation complete
- Ready for production
- Production-ready
- No known critical bugs
- Full documentation
- User guide complete
- Published to Chrome/Firefox stores
- 1.1.0: New features (customizable position, keyboard shortcuts)
- 1.2.0: More features (screenshot capture, custom breakpoints)
- 2.0.0: Major redesign or breaking changes
- Follow SemVer strictly after 1.0.0
- Update version before creating releases
- Tag releases in git
- Document breaking changes
- Test thoroughly before version bump
- Keep version in sync with git tags
- Skip version numbers
- Use version 1.0.0 before production-ready
- Make breaking changes in patch versions
- Forget to update documentation
- Release without testing
- Use inconsistent version formats
| Version | Date | Status | Notes |
|---|---|---|---|
| 0.1.0-beta.1 | 2024-12-08 | Current | Initial beta release |