name: Publish to npm on: push: branches: [main] jobs: build-and-publish: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v4 with: node-version: 20 cache: 'npm' registry-url: 'https://registry.npmjs.org/' - name: Install dependencies run: npm ci - name: Run tests run: npm test - name: Publish to npm run: npm publish env: NODE_AUTH_TOKEN: ${{ secrets.NPM_ACCESS_TOKEN }}