@companynamespace/npm-package-template
v1.0.1
Published
<Package description>
Downloads
5
Readme
npm-package-template
Description
TLDR;
- Create new repo from this Template
- Update Readme
- replace
@companynamespace/npm-package-template
with new package_name
- replace
- Update package.json
- replace "name"
@companynamespace/npm-package-template
with new package_name - replace "repo"
companynamespace/npm-package-template
with new package_name repo - Add description, and other fields if needed
- replace "name"
- Update LICENSE
- Update
[COMPANY
name - Update year
[yyyy]
- Update
- Update docs/CODE_OF_CONDUCT.md
- Update
<COMPANY>
name
- Update
- Activate automatic release
- Add
NPM_TOKEN
secret to the repo - disable
dry_run
in Release step in .github/workflows/release.yml.
- Add
Content
Docs
- LICENSE
- docs/CODE_OF_CONDUCT.md
- docs/CONTRIBUTING.md
- docs/CHANGELOG.md --> dynamically updated
Issue template
- .github/ISSUE_TEMPLATE.md
PR template
- .github/PULL_REQUEST_TEMPLATE.md --> automatically closes connected issue
Workflows
- CI --> npm ci, test and build
- CodeQL --> Perform CodeQL Analysis (Security, etc.)
- Release --> semantic-release:
- Creates release notes
- Updates CHANGELOG
- Updates package.json version
- Creates Git tag/release
- Publish package to NPM
- Manual Release --> same as Release, but can be triggered manually in Actions tab
Release
- based on Angular Commit Message Conventions in commits - https://github.com/angular/angular/blob/master/CONTRIBUTING.md#commit-message-header
- Commit message format is used to build:
- Release notes
- Changelog updates
- NPM package semver
Commit message Convention
<type>(<scope>): <short summary>
│ │ │
│ │ └─⫸ Summary in present tense. Not capitalized. No period at the end.
│ │
│ └─⫸ Commit Scope (optional): project|based|list
│
└─⫸ Commit Type: build|ci|docs|feat|fix|perf|refactor|test