A template repository for creating npm packages using TypeScript
- TypeScript configured and ready (
pnpm run build
). - Vitest configured and ready (
pnpm run test
). - Prettier configured and ready (
pnpm run format
). - Changesets configured and ready (
pnpm changeset
) for versioning. pre-merge
action which builds and tests the change. It will also auto-merge @dependabot changes.post-merge
action which versions and publishes to both npm and Github packages along with generated changelogs.- Dependabot configured for automatic package updates. These will be auto-merged if they pass verification steps.
- Automatically add your Github username as the scope for unscoped npm packages.
- Turn off wikis and projects
- Turn off merge commits and rebase merging
- Set the default commit message for squash to be "pull request title and description".
- Turn on "Always suggest updating pull request branches"
- Turn on "Allow auto-merge"
- Turn on "Automatically delete head branches"
- Protect
main
branch - Turn on "Require status checks to pass before merging"
- Turn on "Require branches to be up to date before merging"
- Set Workflow Permissions to "Read and write permissions"
- Turn on "Allow GitHub Actions to create and approve pull requests"
- Add an
NPM_TOKEN
repository secret: https://github.com/cameronhunter/typescript-project/settings/secrets/actions
- Replace
typescript-project
across the project. - Remove
private: true
frompackage.json
- Add a
description
topackage.json