Creative coding skills for Claude Code, claude.ai and Cowork. Motion, micro-interactions and design systems across Web (GSAP, Motion, Three.js, CSS), Android (Jetpack Compose) and Apple (SwiftUI). Proposes an interaction thesis you approve before it writes any code. Anti-AI-slop.
> /plugin marketplace add AThevon/genjutsu> /plugin install genjutsu@genjutsu
Repo: AThevon/genjutsu
What's inside
Creative coding skills for Claude Code, claude.ai and Cowork - transforms any interface from functional to exceptional through motion design, interaction patterns, and visual systems. Covers Web (React, Vue, Svelte, vanilla CSS, Three.js, Canvas), Android (Jetpack Compose, Compose Multiplatform), and Apple (SwiftUI iOS + macOS).
v3.0 - rebrand: this plugin used to be called
creative-excellence. The skills/creative-excellence:creative-excellenceand/creative-excellence:design-excellenceare now/genjutsu:castand/genjutsu:paint. See CHANGELOG.md for the migration steps if you had v2.x installed.
genjutsu.athevon.dev is built with genjutsu itself. The ink on it is painted by your own scroll, and every mark is drawn in code, no image assets.
| Page | What is in it |
|---|---|
| Overview | What genjutsu is, how the pieces fit, the shortest path to seeing something move |
| Install | Both surfaces, verifying the install, updating, uninstalling |
cast | The seven-stage pipeline, its two validation gates, how to write a good request |
paint | The five phases, the two theses, what lands in your repo |
| Modules | All fifteen, by family: foundations, web, Apple, Android |
| Principles | The rules the skills enforce, and why each one exists |
| FAQ | Plans, dependencies, cast against paint, what to check when output feels generic |
/genjutsu:cast - The IllusionistTakes any creative request and makes it exceptional. Adapts to your stack and scope.
Pipeline: Scan stack -> Evaluate scope -> Propose interaction thesis -> Load sub-skills -> Implement -> Mini-audit
SharedTransitionLayout flow/genjutsu:paint - The Master PainterBuilds a complete visual universe from scratch. Brainstorm first, implement second.
Pipeline: Brainstorm -> Define visual + interaction thesis -> Generate design system -> Implement -> Full audit
MASTER.md design system (Tailwind/CSS for web, Theme.kt for Compose, Color+App.swift for SwiftUI, commonMain for CMP)| Situation | Skill |
|---|---|
| "Add a scroll animation to this section" | /genjutsu:cast |
| "Make this dropdown feel snappy" | /genjutsu:cast |
| "Add a snappy spring to this Compose button" | /genjutsu:cast |
| "Polish the matchedGeometryEffect on this SwiftUI screen" | /genjutsu:cast |
| "Redesign the entire landing page" | /genjutsu:paint |
| "Build me a portfolio from scratch" | /genjutsu:paint |
| "Build a SwiftUI iOS app design system from scratch" | /genjutsu:paint |
| "Bootstrap a Compose Multiplatform design system" | /genjutsu:paint |
Both skills stop and wait for your approval at a handful of points: the interaction thesis, the variants, the visual identity, the design system. A sentence cannot carry an easing curve and a list of hex codes cannot carry a palette, so before the first of those gates the skill asks how you want to see it.
| Mode | What you get |
|---|---|
| Artifact | A live page. The easing curve plotted with its exact value, an element actually performing the motion with a replay button, the raw numbers, a reduced-motion toggle. For a design system: swatches with their contrast ratios, a real type specimen, the five states of every component. |
| Live preview | A throwaway route in your own project - real stack, real tokens, real components. On Compose or SwiftUI, a @Preview / #Preview scratch file. Deleted once you have approved. |
| Inline | The sentence, in the conversation. Still the right answer for a 150ms hover. |
You are asked once. The choice holds for the rest of the session, later gates just announce the mode, and you switch by saying so. The preview is always throwaway: it exists to be looked at, never to become the implementation.
Internal modules loaded dynamically by the orchestrators. Not invocable directly.
| Sub-skill | Scope | Files |
|---|---|---|
| motion-principles | Timing, easing, cross-platform reduced-motion API, BAD/GOOD do-not rules | SKILL + 3 references |
| Sub-skill | Scope | Files |
|---|---|---|
| mobile-principles | Touch targets, no-hover doctrine, thumb zones, safe areas, gestures, mobile perf budgets | SKILL + 2 references |
| desktop-principles | Hover-mandatory, pointer precision, keyboard shortcuts, multi-window, focus management | SKILL + 2 references |
| design-audit | Multi-stack greps (web/Compose/SwiftUI), bundle size, Layout Inspector, Instruments Hitches | SKILL |
| ui-ux-pro-max | Design system intelligence (84 styles, 192 palettes, 74 font pairings, 25 charts, 22 stacks) | SKILL + data + scripts |
| Sub-skill | Scope | Files |
|---|---|---|
| gsap | Core, timeline, ScrollTrigger, plugins | SKILL + 4 references |
| framer-motion | Motion and Framer Motion (same library, two package names) - AnimatePresence, layout, gestures, motion values | SKILL + 1 reference |
| css-native | Scroll-driven, View Transitions, @starting-style | SKILL + 1 reference |
| threejs-r3f | Three.js, React Three Fiber, shaders, postprocessing | SKILL + 2 references |
| canvas-generative | Particles, flow fields, noise, fractals, L-systems | SKILL + 1 reference |
| Sub-skill | Scope | Files |
|---|---|---|
| compose-motion | animate*AsState, AnimatedVisibility, SharedTransitionLayout, springs, gestures | SKILL + 3 references |
| compose-graphics | M3 Expressive motion physics, AGSL shaders (Android 13+), Canvas/DrawScope | SKILL + 3 references |
| compose-multiplatform | KMP/CMP patterns, expect/actual, iOS/Android/Desktop interop | SKILL + 2 references |
| Sub-skill | Scope | Files |
|---|---|---|
| swiftui-motion | withAnimation, transitions, matchedGeometryEffect, PhaseAnimator, KeyframeAnimator, gestures | SKILL + 3 references |
| swiftui-graphics | Metal shaders (.colorEffect / .layerEffect / .distortionEffect), .visualEffect, Liquid Glass (iOS 26), Canvas | SKILL + 3 references |
The short version is on the site: genjutsu.athevon.dev/docs/install. The long version, including partial installs, is below.
Prerequisites: Plan Pro, Max, Team or Enterprise with "Code execution" enabled.
Option A - single bundle (recommended):
One upload, everything included (router + cast + paint + all sub-skills).
genjutsu.zip. That link always serves the newest release, so it never goes stale.genjutsu.zip.cast and paint pipelines, all sub-skills bundled.Want to confirm it mounted correctly? Follow the 2-minute smoke test in docs/claude-ai-testing.md.
How it shows up. The bundle installs as a single skill named genjutsu. In a normal chat it appears as one entry - invoke /genjutsu (or just describe your task) and it routes to the cast or paint pipeline internally. Surfaces that expose skills as individual commands (e.g. a code workspace) show /cast and /paint directly. Either way the pipelines need code execution enabled to load their sub-skills. Prefer /cast and /paint as separate entries everywhere? Use Option B.
Option B - individual skills:
Prefer separate skills, or only part of the stack? Upload the individual ZIPs (one per skill). Baseline for everyone: cast, paint, motion-principles, design-audit, ui-ux-pro-max. Then add per stack:
| Your stack | ZIPs to upload (in addition to baseline) |
|---|---|
| Web only | mobile-principles, desktop-principles, gsap, framer-motion, css-native, threejs-r3f, canvas-generative |
| Android Compose only | mobile-principles, compose-motion, compose-graphics |
| iOS SwiftUI only | mobile-principles, swiftui-motion, swiftui-graphics |
| macOS SwiftUI only | desktop-principles, swiftui-motion, swiftui-graphics |
| Multi-target Apple (iOS + macOS) | mobile-principles, desktop-principles, swiftui-motion, swiftui-graphics |
| Compose Multiplatform | mobile-principles, compose-motion, compose-graphics, compose-multiplatform, swiftui-motion (if iOS target) |
Build from source:
git clone https://github.com/AThevon/genjutsu.git
cd genjutsu
./package-for-claude-ai.sh
# dist/ has genjutsu.zip (the bundle) + 17 individual skill ZIPs
Two slash commands, typed inside a Claude Code session:
/plugin marketplace add AThevon/genjutsu
/plugin install genjutsu
Then run /genjutsu:cast or /genjutsu:paint. You can pass the request on the same line: /genjutsu:cast make the pricing cards feel physical on hover.
The marketplace also accepts the full git URL if you prefer it: /plugin marketplace add git@github.com:AThevon/genjutsu.git.
Or as a git submodule in your dotfiles:
git submodule add git@github.com:AThevon/genjutsu.git claude/plugins/genjutsu
ln -sf ~/.dotfiles/claude/plugins/genjutsu ~/.claude/plugins/genjutsu
FAQ
genjutsu is a Claude Code plugin with 2 hand-picked skills for development work, indexed on Flowy. Install it with the command on its page. It includes cast, paint. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.
Is this plugin yours?
Claim it with GitHubSubmit a pluginPromote it