Shadertoy To Flutter
Ports Shadertoy GLSL shaders into Flutter .frag files that actually compile and load.
Test report
- Verdict
- Tested · Works
- Score
- Tested
- Jul 15, 2026
- Environment
- Claude Code 2.x (agent harness)
- Upstream re-checked
- Aug 10, 2026 · 4e130c9
Ran a real port of the standard Shadertoy 'hello world' cosine-palette shader: the baseline (no skill) kept a #version directive and gl_FragCoord/iResolution/iTime uniform names, which Flutter's Impeller compiler rejects or silently mismatches outright per Flutter's own docs; the skill's output dropped #version, added the flutter/runtime_effect.glsl include, and renamed to uSize/uTime/FlutterFragCoord() per its documented binding rules -- a concrete compile-or-not difference, not just style.
Scored on four weighted criteria — install, triggering, output vs. baseline, docs. How scoring works
- Installs cleanly 5/5
- Triggers reliably 5/5
- Output vs. baseline 9/10
- Docs & honesty 5/5
What Shadertoy To Flutter does
Converts a pasted Shadertoy fragment shader into a Flutter-compatible .frag file for FragmentProgram/Impeller, handling the entry-point rewrite, iResolution/iTime/iChannel* uniform substitutions, fill-vs-wrap classification, and Flutter/SkSL-specific restrictions (no #version, no array initializers, no integer min/max/clamp). Triggers when a user pastes or links a Shadertoy shader and wants it running in Flutter, or has a .frag file failing to compile because of leftover Shadertoy constructs.
How to install Shadertoy To Flutter
git clone https://github.com/FlutterFlow/shadertoy_to_flutter_skill
mkdir -p ~/.claude/skills
cp -r shadertoy_to_flutter_skill ~/.claude/skills/shadertoy-to-flutter
Skills live in ~/.claude/skills/ (global) or .claude/skills/
(per-project). Restart Claude Code after installing.
Commands — how to trigger Shadertoy To Flutter
-
/shadertoy-to-flutterPorts Shadertoy GLSL shaders into Flutter .frag files that actually compile and load.
It also activates on plain-language prompts like these:
-
Can you port this Shadertoy shader into a working Flutter fragment shader? -
My .frag file won't compile in Flutter, it still references iResolution -
Convert this GLSL mainImage function into Flutter's FragmentProgram API
Frequently asked questions
- Is the Shadertoy To Flutter skill free?
- Yes. The skill itself is free from FlutterFlow/shadertoy_to_flutter_skill. SkillProof publishes the install command and an independent test verdict at no cost.
- Does Shadertoy To Flutter work with Claude Code?
- We tested it with Claude Code 2.x (agent harness) on Jul 15, 2026. Verdict: Tested · Works. Ran a real port of the standard Shadertoy 'hello world' cosine-palette shader: the baseline (no skill) kept a #version directive and gl_FragCoord/iResolution/iTime uniform names, which Flutter's Impeller compiler rejects or silently mismatches outright per Flutter's own docs; the skill's output dropped #version, added the flutter/runtime_effect.glsl include, and renamed to uSize/uTime/FlutterFragCoord() per its documented binding rules -- a concrete compile-or-not difference, not just style.
- What is the Shadertoy To Flutter SkillProof Score?
- 9.6/10 — installs cleanly 5/5, triggers reliably 5/5, output vs. baseline 9/10, docs & honesty 5/5.
- How do I install Shadertoy To Flutter?
- Copy the install command from this page, run it in your terminal, and restart Claude Code. Skills live in ~/.claude/skills/ (global) or .claude/skills/ inside a project.
- Can I use Shadertoy To Flutter with Cursor, Copilot, Gemini CLI, Codex or other AI tools?
- The SKILL.md format is native to Claude (Claude Code, Desktop, claude.ai). The instructions inside adapt to other assistants: Cursor rules, GitHub Copilot instructions, Windsurf rules, Custom GPTs, AGENTS.md for OpenAI Codex, and GEMINI.md for Google Gemini CLI — our conversion guides cover each, and the free converter on the tools page does the wrapping for you.