Schema-Correct YAML
The generator produces syntactically valid workflow YAML that passes GitHub's schema validation on the first push, eliminating the red-X loop of fixing indentation errors.
500+ fast, free tools. Most run in your browser only; Image & PDF tools upload files to the backend when you run them.
Generate starter CI/deploy workflow YAML for common project types.
GitHub Actions Workflow Generator on UtilityKit creates ready-to-use YAML workflow files for common CI/CD patterns — CI test runs, Docker image builds and pushes, automated deployments, and pull-request checks — without requiring you to memorise the GitHub Actions YAML schema. Select your trigger events (push, pull_request, schedule, workflow_dispatch), pick one or more job templates (lint, test, build, deploy), configure your runtime environment, and the generator assembles a syntactically valid `.github/workflows/` file you can drop into your repository. Each generated workflow follows GitHub's official recommendations: pinned action versions, explicit permissions blocks, concurrency groups to cancel redundant runs, and secret references rather than hard-coded credentials. Ideal for teams setting up CI for the first time and engineers who want a correct scaffold without wading.
The generator produces syntactically valid workflow YAML that passes GitHub's schema validation on the first push, eliminating the red-X loop of fixing indentation errors.
All `uses:` references include the recommended version pin (e.g. `actions/checkout@v4`) so your workflow does not silently break when an action publishes a breaking change.
Generated workflows include explicit `permissions:` blocks scoped to minimum required access, and reference secrets by name rather than embedding credentials.
Automatic concurrency group configuration cancels in-progress runs on the same branch when a new push arrives, saving CI minutes on fast-moving branches.
Supports push, pull_request, schedule (cron), and workflow_dispatch triggers — mix and match for complex CI/CD pipelines without hand-writing every trigger block.
Runs entirely in your browser. No GitHub login, no CLI tools, and no Actions billing required to generate, copy, and inspect workflows.
Input: Trigger: push + pull_request, Job: Test, Runtime: Node 20, Cache: npm
Output: name: CI on: push: branches: [main] pull_request: branches: [main] jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: '20' cache: 'npm' - run: npm ci - run: npm test
Input: Trigger: push to main, Job: Build + Push, Registry: ghcr.io
Output: name: Docker on: push: branches: [main] jobs: build: runs-on: ubuntu-latest permissions: contents: read packages: write steps: - uses: actions/checkout@v4 - uses: docker/login-action@v3 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - uses: docker/build-push-action@v5 with: push: true tags: ghcr.io/${{ github.repository }}:latest
Input: Trigger: cron 02:00 UTC daily, Job: Audit, Runtime: Node 20
Output: name: Nightly Audit on: schedule: - cron: '0 2 * * *' jobs: audit: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: { node-version: '20', cache: 'npm' } - run: npm ci - run: npm audit --audit-level=high