Mindket

Emil Kowalski Design Engineering Skills

Newversion 2 · updated
Star54.2k

Overview

Emil Kowalski’s seventeen skills for coding agents that build interfaces. They build, review and audit animations, remove motion an app does not need, and cover Apple-style design, phone fixes, worst-case data, Swift and Sonner.

Emil Kowalski Design Engineering Skills is an open-source project on GitHub in the Developer category, listed by Mindket. It is free. This is version 2, last updated on . Install it from GitHub as its README says. Get Mindket’s setup notes on your Mindket account, as a zip.

At a glance

Runs in
  • Web projects in plain CSS or React: most of the seventeen
  • React Native and Expo: animate-expo
  • Swift: write-swift
  • Sonner toasts in React: ask-sonner
Start with
npx skills@latest add emilkowalski/skills

Platform

Any coding agentCoding agent
Claude CodeCoding agent
CodexCoding agent
CursorCode editor
OpenCodeCoding agent

About

What it is

Emil Kowalski Design Engineering Skills is Emil Kowalski’s set of seventeen skills for coding agents that build and review interfaces. Most cover motion. One builds an animation, one reviews it, one audits a whole codebase and one removes the motion an app does not need. animate-expo brings the same bar to React Native and Expo. Others cover Apple-style design, phone fixes for web apps, worst-case test data, Swift, picking a UI library, prototyping and the Sonner toast library. His README says they come from his years at companies like Vercel and Linear.

  1. You run one install command in your project
  2. The tool asks which skills and agents you want
  3. You ask for a task, or type a skill’s name
  4. Claude follows that skill’s rules and answers

Who it suits

Front-end developers and designers who build with an AI coding agent and keep getting small mistakes back, such as ease-in on an entrance or a hard border where a soft shadow belongs. Mobile developers on Expo and Swift developers have a skill each. Skip it if you want an agent that picks its own style. Several of these skills call themselves opinionated, and animate will say when something should not animate.

Where to use it

Any coding agent the install tool can reach. Mindket’s notes cover Claude Code in detail, and the tool also lists Codex, Cursor and OpenCode.

  • Web projects in plain CSS or React: most of the seventeen
  • React Native and Expo: animate-expo
  • Swift: write-swift
  • Sonner toasts in React: ask-sonner

How to set it up

Get it saves a zip of Mindket’s setup notes in your downloads folder. The tool you run installs the skills, and you choose which ones.

What you need first
NeedDetail
Node.js 22.20 or laterThe install tool is an npm package, and its README names this version
A coding agentClaude Code, Codex, Cursor, OpenCode or another agent the tool lists
A terminalOpen it in your project folder, since the tool installs there by default
Accounts and keysNone for the skills. Your agent runs on its own account
  1. Open a terminal in your project folder. The tool installs to this project unless you add -g.
  2. Run the install command below. The tool asks which skills and agents you want, and you pick.
  3. Start your agent in the same folder. If Claude Code was already open and its skills folder is new, type /reload-skills.
  4. Type a skill’s name, such as /animate. Claude replies with one line and waits for your question.
npx skills@latest add emilkowalski/skills

The install tool’s README says -g makes the skills available across projects. Emil’s README shows only the command above.

How to use it

Describe the job, or type a skill’s name and then what you want. Claude reads that skill and works to its rules. Three skills run only when you name them: pick-ui-library, prototype and review-animations.

Build and review motion
SkillYou give itClaude does
animateA request for motion, such as a press effectDecides whether it should animate at all, then writes the code with a chosen curve, duration and properties
animate-expoThe same request for a React Native or Expo screenWrites it with Reanimated and Gesture Handler, and keeps motion off the JS thread
review-animationsA diff or files with animation codeReviews against a strict bar and flags by default, since approval has to be earned
improve-animationsA codebaseAudits its motion and writes plans into a plans folder, without editing your source
find-animation-opportunitiesA codebase or a screenLists places that should animate and rejects the rest, read-only
remove-animationsAn app that feels slow or over-animatedDeletes or reduces motion it does not need, and never adds or retunes any
choreographSeveral elements that move togetherDecides what leads, what follows and what stays still
animation-performanceAn animation that stuttersFinds why frames drop and swaps in cheaper properties
animation-vocabularyA loose description of an effectNames the effect, so you can ask for it in the right words
Design, mobile and code
SkillYou give itClaude does
emil-design-engUI code to build or reviewThe main skill. A review comes back as a table of Before, After and Why
apple-designA gesture, sheet or spring to buildApplies Apple’s design and motion principles, translated for the web
mobile-nativeA web app that feels wrong on a phoneFixes sticky hover, the 100vh bug, inputs that zoom the page and safe areas
break-uiA component or a screenFeeds it worst-case data behind a toggle and reports what broke, then stops before fixing
pick-ui-libraryA task such as toasts or drag and dropRecommends one library from the maker’s own list
prototypeA piece of UI you describeBuilds three different versions by default behind a picker for you to flip through
write-swiftSwift code or a concurrency errorWrites, reviews and migrates modern Swift
ask-sonnerA Sonner setup or a toast that misbehavesAnswers from the maker’s own guide to his toast library

Example

Your Save button feels flat when pressed, and you want a small press effect.

/animate a press effect for the Save button in components/button.tsx

Claude first checks whether the button should animate at all, then writes the press as a transform change, timed in the skill’s 100 to 160 ms range for press feedback.

The skill’s rules ship reduced-motion handling with the animation, not later, and tell Claude to make the call and give its reason in one line instead of offering a menu.

For newcomers and experts

If you are new. A skill is a text file of instructions that your agent reads when your request matches it, or when you type its name. Start with emil-design-eng, the main one, or with animate. Type a skill’s name alone first and you get one line back, which tells you it loaded. Then ask your question.

For experts. Each SKILL.md opens with a name and a description. Three add disable-model-invocation: true, which keeps Claude from starting them on its own. improve-animations takes extra words after its name: quick or deep, a focus such as performance, plan with a description, execute with a plan, and reconcile. Execute has Claude hand the plan to a subagent in an isolated worktree, then review what it changed. Its SKILL.md writes that form like this, and in Claude Code you type a skill’s name after a slash.

improve-animations execute <plan>

The maker also keeps two cheat sheets in the repository, each a table of a problem and its fix. They are plain tables, not skills.

Good to know

These skills hold strong opinions, and several say so in their own text.

  • Taste: ease-out for entrances, never ease-in, and UI motion under 300 ms, from animate’s own tables
  • Review mode: review-animations flags by default, and its text says approval is earned
  • Files written: improve-animations writes only under plans/ or animation-plans/, except execute, where a subagent applies one plan in an isolated worktree. break-ui adds a dev-only toggle, and prototype builds in an isolated surface that it deletes once you pick a winner
  • Install tool: a separate Vercel Labs project that collects anonymous usage data unless you set DISABLE_TELEMETRY=1 or DO_NOT_TRACK=1
  • Updates: the README gives no update or removal step, and the install tool has its own commands for both
  • Maker: Emil Kowalski, MIT licensed. Not made or endorsed by Vercel or any agent’s maker

README and files

README
# Emil Kowalski Design Engineering Skills: setup notes

This kit holds setup notes written by Mindket. It does not contain the skills. They install from Emil Kowalski’s repository: https://github.com/emilkowalski/skills

License: MIT, Copyright (c) 2026 Emil Kowalski. Full text: https://github.com/emilkowalski/skills/blob/main/LICENSE

These are community skills by Emil Kowalski. They are not made or endorsed by Anthropic, Vercel or any coding agent’s maker.

The pages these notes came from: the README (https://github.com/emilkowalski/skills/blob/main/README.md), each skill’s SKILL.md under https://github.com/emilkowalski/skills/tree/main/skills, the two cheat sheets (https://github.com/emilkowalski/skills/blob/main/ui-cheatsheet.md and https://github.com/emilkowalski/skills/blob/main/performance-cheatsheet.md), the README of the install tool the maker names (https://github.com/vercel-labs/skills/blob/main/README.md), and Claude Code’s skills page (https://code.claude.com/docs/en/skills). Mindket copied every command and ran none of them.

## What it is

Seventeen skills for a coding agent that builds and reviews interfaces. Most cover motion: building an animation, on the web or in React Native with Expo, reviewing one, auditing a codebase, removing the ones an app does not need, and finding the cause of dropped frames. The others cover Apple-style design, fixes that make a web app feel native on a phone, worst-case test data, Swift, picking a UI library, prototyping and the Sonner toast library.

The README says they are based on Emil’s years of work at companies like Vercel and Linear, and that they list the small mistakes agents make and how to fix each one.

## The seventeen skills

| Skill | What it does |
|---|---|
| emil-design-eng | The main skill: mostly animation, with some design advice |
| animate | Builds an animation from scratch, choosing the curve, duration and properties |
| animate-expo | The same bar for React Native and Expo: gestures, sheets, haptics, screen transitions |
| review-animations | A strict review of animation code. Explicit use only |
| improve-animations | Audits all the motion in a codebase and writes plans for other agents to run |
| find-animation-opportunities | Finds places that should animate, and says what should not |
| remove-animations | Removes motion an app does not need |
| choreograph | Coordinates several elements that animate together |
| animation-performance | Finds and fixes animations that drop frames |
| animation-vocabulary | Turns a loose description of a motion effect into its exact name |
| apple-design | Apple’s interface and motion principles, translated for the web |
| write-swift | Modern Swift: value types, Swift 6 concurrency, generics, performance, Swift Testing |
| pick-ui-library | Picks a library for a task from the maker’s own list. Explicit use only |
| prototype | Builds several different versions of a UI piece behind a switcher. Explicit use only |
| mobile-native | Small CSS and meta fixes that make a web app feel native on a phone |
| break-ui | Tries to break a UI with worst-case data and reports what failed |
| ask-sonner | A guide to Sonner: setup, styling, recipes and fixes |

Source: the README’s “Reference” list and each SKILL.md’s front matter.

## Files in this kit

- setup/install.md: the one install command the README gives, what the install tool asks, and project or all-projects installs
- setup/claude-code.md: using the skills in Claude Code, the three that need their name typed, and removing them
- setup/other-agents.md: Codex, Cursor, OpenCode and the other agents the install tool lists

## What you need first

- A coding agent that reads skills, such as Claude Code, Codex, Cursor or OpenCode.
- Node.js 22.20 or later, for the install tool. The tool’s README says so.
- A terminal in your project folder.
- No account, sign-up or API key for the skills. The agent itself runs on its own account.

## Your data

The repository holds Markdown text files only, with no scripts. The install tool is a separate program: its README says it collects anonymous usage data and gives two settings to turn that off (setup/install.md). What you ask the agent, and the files it reads, go to the agent’s own provider as in any other session.

## Update and remove

The README gives no update or removal step. The install tool’s README lists commands for both (setup/install.md).
Files
README.md  4 KB
setup/claude-code.md  3 KB
setup/install.md  2 KB
setup/other-agents.md  2 KB

4 files, 11 KB, downloaded as a zip.

What’s new

  • Version 2 · 2026-11-09

    Updated by Mindket to the current version of this kit.

  • Version 1 · 2026-11-07

Reviews

No ratings yet

Write a review

No reviews yet.

What people say

Posts and comments that name this project on Hacker News, Bluesky, X, Reddit, Facebook and YouTube, found by a weekly search and on Trendshift. Mindket doesn’t write or check them. Open one to read it where it was posted.

cocoflunchyLaunch HN: Bloomy (YC S26) – AI-powered mastery learning for K-12I think 383toast is talking about your landing page design which has very strong AI-generated design vibes (blue-green gradients, rounded rectangles with a colored border on the left...) There are a bunch of skills you can find online to improve on this if you want to keep designing with Claude,…Aditya Mitrahttps://www.skills.sh/emilkowalski/skills/emil-design-eng https://www.skills.sh/jakubkrehel/skills/better-ui Someone made this CRM with these 2 skills I use a different variant of these #design #frontend #aitools8 likessixtyjNetworking and the Internet, from First PrinciplesIssue is LLM itself. For design and typography it needs precise instructions otherwise you get output that it is information-heavy but churn rate is high as ppl can’t use (read) it. I have to control output everytime but after 25 years in magazine layout I know what has to be controlled.…Michael McLeanThese UI animation skills are truly elite stuff github.com/emilkowalski...1 likesixtyjI've been building this alone for months. Roast it before I lose any more time> What's actually the best? Community-ranked products, services, and places. No ads, no paid placements. Just real opinions from real people. Opinions from REAL people. No ads, no paid placements. - that is what I care. Remove all metrics (numbers) for now. It looks like scam. You can add them…Matt Pocock {bot}My top 3 skill makers: - @poteto - @dexhorthy - @emilkowalski Always learn a ton from reading their skills.1 likeThiago ProgramadorPara quem faz o AI criar UI e acha que "ficou meio meh" 👀 skills com ⭐️ cerca de 37 mil. Conjunto de skills que dá ao AI o conhecimento de design de alguém com experiência em Vercel e Linear. github.com/emilkowalski...1 likeRetweeted by Garry Tan [UNOFFICIAL]/skills by @emilkowalski: design and motion skills that survive real audits https://github.com/emilkowalski/skills /cartographer by @KingBootoshi: a repo map before your agent wanders https://github.com/kingbootoshi/cartographer1 replyDYDoes your AI-built UI survive a long name or an empty list? Emil Kowalski's break-ui catalog has ready test cases for missing avatars, narrow layouts and more. Free, MIT-licensed: github.com/emilkowalski... #WebDevTom Dörrhttps://github.com/emilkowalski/skills@ai-linkstream.bsky.socialDiscover "Skills for Designers and Engineers," a GitHub repository by Emil Kowalski, offering valuable insights and tools to enhance your UI design and animation skills. Leverage expertise and AI to make informed design choices and elevate your projects. https://github.com/emilkowalski/skills

Searched

More from Mindket

See all from Mindket

Nanosaur2-670M

well9472 · Kit

Makes illustrations from text prompts with a small 670M-parameter diffusion model, run through ComfyUI. Built as a low-budget research model for people who wan…

New

Reads handwritten Arabic text from images and returns it as text. A fine-tuned PaddleOCR-VL model for people digitizing Arabic handwriting.

New

Makes video clips from a text prompt or an image plus text, at up to 720P and 24 frames per second, in the Diffusers format for a single consumer GPU.

New

Similar in Developer

See all in Developer

Wan2.2-S2V-14B

Wan-AI · Kit

Generates cinematic video of a character driven by an audio track, and can also lip-sync existing video. For video creators, animators and researchers with a l…

New

Wan2.2-Animate-14B

Wan-AI · Kit

Animates a character or swaps one into a video by copying a performer's movement and expressions, as one model from the Wan2.2 video family. Use only faces and…

New

d3-turbo

vllm-sr · Kit

Answers choice, yes-or-no, score, box and tracking questions about text, images or video in one call, with a probability for each answer. For people building r…

New