Validate GitLab CI Online — .gitlab-ci.yml Structure Checker

Structural checks for stages, jobs and script/trigger. Not a GitLab runner — validation stays in your browser.

Loading…
GitLab CI validator — structural checker
Catch missing script/trigger on jobs and bad stages arrays — not a GitLab runner or full schema validator.

Developer notes

• Reserved keys (stages, variables, include, …) are not treated as jobs. • Hidden jobs starting with . skip the script requirement. • extends-only jobs emit a warning in v1. • Does not fetch remote includes or execute pipelines. • Issues and severity counts appear in the results panel after debounce (~300 ms).

When teams pick this route

• Quick check of a pasted .gitlab-ci.yml snippet. • Spot jobs missing script before push. • Teach pipeline shape without a GitLab project. • Pair with format-gitlab-ci after fixes.

Worked examples

Valid stages + unit job

Input

stages: - test unit: stage: test script: - npm ci - npm test

Validation result

Valid GitLab CI structure — no blocking issues — shown in the results panel.

Job without script

Input

stages: - build compile: stage: build

Validation result

Invalid — job-like key missing script or trigger — shown in the results panel.

Navigate related CI/CD tools

Format YAML with format GitLab CI, validate Actions with validate GitHub Actions, or browse the CI/CD hub.

GitLab CI validator FAQ

Structural checks only

Same as GitLab CI Lint?

No. We do not call GitLab’s API or simulate a runner. Checks are structural (YAML + jobs/script) in your browser.

Are hidden jobs validated?

Jobs whose names start with . are skipped for the script requirement (templates). Other keys still follow reserved-key rules.

What about pages jobs?

pages is treated as a job and must satisfy script/trigger rules like other jobs.

CI/CD

GitHub Actions and GitLab CI — format YAML and check workflow/job structure in your browser.

Explore other tool categories

Minify

Shrink code and assets for production — minify JavaScript, CSS, HTML, JSON and XML before gzip or CDN deploy.

Beautify

Make code readable with consistent indentation — beautify JavaScript, CSS, TypeScript, SCSS, LESS, Markdown, GraphQL, SQL, YAML and more in your browser.

Unminify

Expand minified or compressed code — unminify JavaScript, CSS, TypeScript, SCSS, LESS, SQL, YAML and other formats when debugging or reviewing.

Conversion

Transform data between JSON, YAML, XML and CSV locally — no server uploads.

CSS preprocessors

Compile SCSS or LESS to standard CSS in the browser — pair with beautify or minify for a full stylesheet workflow.

JSON Tools

Validate, format, diff and explore JSON payloads — complementary to minifiers and converters.

SVG Tools

Preview, optimize with SVGO, export Data URI, resize, beautify, convert to JSX and validate SVG — all in your browser.

DevOps & Infra

Terraform HCL format/validate/minify, Dockerfile format & lint, Docker Compose and .env validation.

Logs & observability

Line-oriented JSON/NDJSON and Nginx/Apache access logs — format, filter, validate, and CSV/TSV.

Kubernetes

Multi-doc manifests, structural validate, Ingress/Deployment starters, and Helm values formatting.

Networking / IP

CIDR, subnets, and IPv4/IPv6 helpers — in your browser.

Security & tokens

JWKS, X.509 certificates, and secrets scan — browser-local.

API & schemas

OpenAPI tools to format, validate, and lint your specs.

Encoding

Encode or decode Base64, URL components and HTML entities — client-side only.

Developer utilities

Timestamps, UUID, ULID, Nanoid, cron, passwords, regex, slugify, number bases, case, text diff, and chmod — all client-side.

Text & Markdown

Count words, build Markdown TOCs, and clean line lists — all in your browser.

AI & LLM

Token counting, pricing estimates, and context-window fit — 100% browser-local.

Serialization

Serialize and deserialize PHP data structures beside JSON workflows.