---
title: "shader-ast"
description: "TypeScript DSL and AST compiling one shader definition to GLSL, WGSL or JavaScript, enabling CPU-side shader debugging."
canonical: "https://vibing.inc/library/shader-ast-vg-1762"
category: "Shaders, WebGL & Creative Coding"
subcategory: "Shader tooling"
license: "Apache-2.0"
author: "Karsten Schmidt (@thing_umbrella)"
source: "https://github.com/thi-ng/umbrella/tree/develop/packages/shader-ast"
---

# shader-ast
TypeScript DSL and AST compiling one shader definition to GLSL, WGSL or JavaScript, enabling CPU-side shader debugging.
## Facts
- Source: https://github.com/thi-ng/umbrella/tree/develop/packages/shader-ast
- Category: Shaders, WebGL & Creative Coding / Shader tooling
- Author: Karsten Schmidt (@thing_umbrella)
- Licence: Apache-2.0
- Tags: shaders, typescript, dsl, codegen
## Why it's a gem
Write a shader once then run it on the CPU to debug it; nothing else does this.
---
Listed in The Vibeary: https://vibing.inc/library/shader-ast-vg-1762 · JSON: https://vibing.inc/api/public/library/gems/shader-ast-vg-1762