on: push: tags: - 'v*' name: Create Release permissions: id-token: write contents: read jobs: publish-to-npm: name: Publish to npm runs-on: ubuntu-latest permissions: id-token: write steps: - name: Checkout source uses: actions/checkout@v6 - name: Setup node uses: actions/setup-node@v6 with: node-version: 24 registry-url: 'https://registry.npmjs.org' cache: npm - name: Install latest npm run: npm i -g npm - name: Install dependencies and build run: npm ci - name: Publish package run: npm publish create-github-release: name: Create GitHub Release runs-on: ubuntu-latest needs: publish-to-npm permissions: contents: write steps: - name: Checkout code uses: actions/checkout@v6 - name: Create Release run: gh release create ${{ github.ref }} --generate-notes env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}