diff --git a/README.md b/README.md index 32210c8..b2f39f0 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,9 @@ Action and CLI to help managing public repositories that publish one or more npm ## getting started -(pnpm is required, so install pnpm if not available yet) +The easiest way to create a new turbo-module is to use [`create-turbo-module`](https://github.com/whopio/turbo-module/tree/main/packages/create-turbo-module): + +NOTE: pnpm is required, so install pnpm if not available yet ```bash pnpm create turbo-module @@ -14,6 +16,16 @@ Follow the instructions given by the CLI. After a successful install the github repo needs to be configured. Follow the steps outlined in the README of your newly set-up turbo-module +## features + +- publish multiple npm packages from the same repository +- release new versions by accepting automatically created PRs + - after every release there are 2 PRs created, one for a full release and one of a canary release + - the full release PR can be configured by commenting `/major`, `/minor` or `/patch` +- automatic GitHub release with every npm release +- [`unimported-action`](https://github.com/whopio/unimported-action) installed by default +- repository linting with PR hints + ## action `whopio/turbo-module`: Multi-purpose action - different sub-actions can be invoked via the `action` input diff --git a/packages/create-turbo-module/README.md b/packages/create-turbo-module/README.md new file mode 100644 index 0000000..55393a2 --- /dev/null +++ b/packages/create-turbo-module/README.md @@ -0,0 +1,13 @@ +# create-turbo-module + +The easiest way to bootstrap a new [`turbo-module`](https://github.com/whopio/turbo-module) + +## usage + +NOTE: pnpm is required + +```bash +pnpm create turbo-module +``` + +After following the instructions from the CLI, push the repository to github and follow the steps in its README to finish setup. diff --git a/packages/create-turbo-module/template/README.md b/packages/create-turbo-module/template/README.md index 6761e06..1618f8a 100644 --- a/packages/create-turbo-module/template/README.md +++ b/packages/create-turbo-module/template/README.md @@ -1,18 +1,32 @@ -# turbo-module starter +# (turbo-module): $$NAME -this is a starter template generated from `create-turbo-module` +this is a [`turbo-module`](https://github.com/whopio/turbo-module) starter template generated using [`create-turbo-module`](https://github.com/whopio/turbo-module/tree/main/packages/create-turbo-module) -## Additional setup: +## repository setup + +After creating your turbo-module, push the repository to github and apply the following (recommended) settings: - Only allow squash merging PRs and set the default message to `Pull request title and description` -- install kodiakhq -- set up branch protection for the `main` branch, i.E.: +- install [kodiakhq](https://github.com/marketplace/kodiakhq#pricing-and-setup) +- set up branch protection for the `main` branch: - require a pull request before merging - require approvals: 1+ - require review from code owners + - require status checks to pass before merging + - require branches to be up to date before merging - require conversation resolution before merging - restrict who can push to matching branches - resitrct pushes that create matching branches - allow kodiakhq to push to matching branches - allow actions to create PRs (/settings/actions). This has to be allowed on the repo and org level - add your `NPM_TOKEN` to your workflow secrets + +## additional setup + +NOTE: The PR action has to run at least once for these checks to become selectable + +- updated the branch protection rules for the `main` branch: + - require status checks to pass before merging: + - Check unimported + - Lint repository + - Test repository