@loudevuno/version-changelog-updater
v0.1.2
Published
Automated version management and changelog generation for loudog.uno apps
Downloads
316
Maintainers
Readme
@loudoguno/version-changelog-updater
Automated version management and changelog generation for loudog.uno applications.
Features
- Automated SemVer: Analyzes Conventional Commits to determine version bumps
- Privacy Protection: Validates commit messages against forbidden patterns
- Build Stamps: Tracks SHA, build number, and timestamp
- Raycast-Inspired UI: Beautiful dark-themed changelog components
- GitHub Actions Ready: Automated workflow templates included
Installation
npm install --save-dev @loudoguno/version-changelog-updaterOr install from GitHub:
npm install --save-dev github:loudoguno/version-changelog-updaterQuick Start
1. Create Config File
Create changelog.config.ts in your project root:
import { defineConfig } from '@loudoguno/version-changelog-updater';
export default defineConfig({
appSlug: 'your-app-name',
privacy: {
forbiddenPatterns: [
/api[_-]?key/i,
/secret/i,
/password/i,
/token/i,
],
failOnMatch: true,
},
sections: {
showMaintenance: false,
showDocs: false,
showChore: false,
},
});2. Generate Changelog
npx version-changelog-updater generate --appSlug your-app-name3. Use React Components
import { ChangelogPage } from '@loudoguno/version-changelog-updater/react';
export function Changelog() {
return <ChangelogPage appSlug="your-app-name" />;
}CLI Commands
Generate Changelog
# Generate changelog and version files
npx version-changelog-updater generate --appSlug my-app
# Dry run (preview without writing)
npx version-changelog-updater generate --appSlug my-app --dryRun
# Process last N commits
npx version-changelog-updater generate --appSlug my-app --maxCommits 100Conventional Commit Types
feat:→ 💎 Improvements (MINOR bump)fix:→ 🐞 Fixes (PATCH bump)perf:→ 💎 Improvements (MINOR bump)refactor:→ 🔧 Maintenance (PATCH bump)docs:→ 📝 Docs (PATCH bump)chore:→ 🧹 Chore (PATCH bump)changelog:→ Excluded from changelog
Breaking Changes
Add ! to trigger MAJOR version bump:
feat(auth)!: remove legacy login APIOr use footer:
feat(auth): update authentication flow
BREAKING CHANGE: Legacy login API has been removed.Output Files
The generator creates:
changelog/version.json- Current version + build metadatachangelog/index.json- Full changelog indexchangelog/latest.json- Latest version metadatachangelog/entries/vX.Y.Z.json- Individual release entries
GitHub Actions Integration
See templates/changelog.yml for a complete GitHub Actions workflow example.
Privacy Validation
Configure forbidden patterns to prevent leaking sensitive information:
privacy: {
forbiddenPatterns: [
/sk-[a-zA-Z0-9]+/, // OpenAI keys
/supabase\.co\/[^\/]+/, // Supabase project URLs
/192\.168\.\d+\.\d+/, // Private IPs
],
failOnMatch: true, // Fail CI if pattern detected
}License
MIT
Contributing
Issues and pull requests welcome at github.com/loudoguno/version-changelog-updater
