Repository navigation
Releases
tasteskill v2.5.1
What a 44-site test of 2.5.0 showed, fixed: builds now iterate until the checker is clean, every page moves, products without photographs are shown in photographs, palettes fit the trade, the copy gets a voice of its own, and nothing lies on anything else on a phone. The install name did not change.
- A finish gate:
scripts/gate.mjsruns the checker, the layout check and a copy lint, and a build is not done until its last line readsGATE: PASS(three rounds, five waivers with reasons at most). In Claude Code it runs as a Stop hook from the skill itself. It never traps an agent: a question to the user costs no round, andgate.mjs --doneends a build at the user's word. - Motion on every page: every hero enters once on load, and every page carries one or two scroll moments. Cafes, shops and services get photo- and type-led ones (new
photo-chapters, a film look forpicture-develops); shader effects stay on tech pages. - Photographs over renders: a product without the client's pictures is shown in licensed stand-in photographs (
photos.mjs search: Wikimedia Commons, CC0, CC BY, CC BY-SA and public domain only). A 3D render only when the brief asks for one. - Palettes by trade:
start.mjs deal --trade cafedeals palettes made for that trade, so two cafes no longer start alike. Eight new place palettes. - A copy layer: a fact sheet, a voice card, one register and the moves for each part of the page, plus
copy-lint.mjs, which counts the tells of model-written copy. The gate runs it. - Accessibility, forms and metadata: accessible names, labels, the focus ring, heading order, share tags and real form sends are checked.
- Phones: sections grow with their content instead of lying over the next one, 44px tap targets, a phone action bar that waits until the hero's button has scrolled away, and new
collide,tap-sizeand 320px checks. - A kit that passes its own checks: all 11 hero layouts, the starter and two in-page moment models pass the checker and the layout check at 1440 and 390 (
tests/kit-clean.mjs).
Update with the same command you installed with, for example:
npx skills add https://github.com/Leonxlnx/taste-skill --skill "design-taste-frontend"
or, as a Claude Code plugin, /plugin marketplace update taste-skill and then /plugin install taste-skill@taste-skill.
Full list in CHANGELOG.md. Thanks to the community contributors named there, whose pull requests went into 2.5.x.
tasteskill v2.5
A complete rebuild of design-taste-frontend around professional company websites at the figma.com and x.ai bar. The install name did not change.
- One page system: every build starts from the same starter. The hero fills the first screen, one section per screen, equal left and right edges.
- Effects only where they fit: shader grounds, scroll moments and big scenes only on software, tech and gaming pages. Cafes, shops, hotels and services get real photographs and no effects.
- Real product UI: 19 HTML UI fragments (chat, diff review, terminal, pipeline board, voice and more), and a software page shows its product in one app window.
- Real photographs and icons: vetted Unsplash and Wikimedia Commons frames by trade, no captions, one footer credit line; real brand icons, never drawn.
- No two pages alike: the hero layout, palette, type pairing and ground are dealt at random.
- A product is always shown, and big: with no photographs it is rendered from a spec of its parts, and the colour buttons change the picture.
- Checked in a real browser: over 100 checks at 1440, 1024, 768 and 390. A page with a FAIL is not done.
- Installs anywhere: Node 22+ and Chrome, Edge or Chromium, no API keys. On Windows
install.shmakes a real link.
Everything else is in the changelog.
npx skills add https://github.com/Leonxlnx/taste-skill --skill "design-taste-frontend"Claude Code plugin users: /plugin update. Codex plugin users: start a new session after codex plugin add taste-skill@taste-skill.
tasteskill v2.1.5
Fixes from the community. Thanks to everyone who reported and sent them.
- Safe text in charts and split headings (#160, #169, thanks @jcastilla89 and @Pablolakotek):
charts.jsand theStage.splitfallback escape the text they insert, so a label or heading from user data can no longer inject markup. - No lost screenshots when two widths share a class (#162, #165, thanks @nosawavey-spec and @ketpatil77).
- Keyboard and accessible names (#170, thanks @MrBinnacle): every control works from the keyboard and has an accessible name.
- The italic faces load (#161, fix from #166, thanks @nosawavey-spec and @ketpatil77): Boska, Erode and Sentient request their italic weight.
edge-textno longer fails ellipsised lines (#156, thanks @shoctroper).- Inspect the production build (#171, thanks @lilozzy): the Gate says so, and the inspector warns when it is looking at a dev server.
- The redraw rule names its third reason (#163, thanks @Tsury).
- CI also checks that every text file is clean UTF-8.
npx skills add https://github.com/Leonxlnx/taste-skill --skill "design-taste-frontend"Claude Code plugin users: /plugin update.
tasteskill v2.1.4
This release makes the inspector's browser profiles safe when several runs go at once (#157, #158, #159). The rules of design-taste-frontend are unchanged; only scripts/lib/cdp.mjs changed.
- Fix: one inspector run could delete the browser profile of another run that was still going. Chrome keeps no
lockfileon macOS and Linux, so the sweep added in 2.1.0 judged a profile unused by its age alone. A second run started during a long one could then pull that run's profile away. Thanks to @t4sh for the report and the fix. - Leftover profiles are cleaned up again, safely. Every profile now carries
taste-skill-owner.jsonwith the machine and the process IDs of the run and its Chrome. A later run removes a profile left by a killed run only when that file names this machine and neither process is alive. A profile without the file is never touched.
Profiles left by earlier versions are not removed automatically. To clear them, delete the ad-chrome-* folders in your temp folder (or in TASTE_SKILL_TMP).
Update:
npx skills add https://github.com/Leonxlnx/taste-skill --skill "design-taste-frontend"Claude Code plugin users: /plugin update.
tasteskill v2.1.3
One repo, one skill. design-taste-frontend itself is unchanged; this release cleans up the repo around it (#153, #155).
The other skills moved to repos of their own and kept their install names:
- The classic styles and earlier versions (
high-end-visual-design,minimalist-ui,industrial-brutalist-ui,gpt-taste,stitch-design-taste,design-taste-frontend-v1,design-taste-frontend-v2-experimental) are in Leonxlnx/taste-skill-classics. - The image-generation skills (
imagegen-frontend-web,imagegen-frontend-mobile,brandkit,image-to-code) are in Leonxlnx/imagegen-skills. redesign-existing-projectsis part ofdesign-taste-frontend.
Installed a classic skill from this repo before? Install it from its new home under the same name:
npx skills add https://github.com/Leonxlnx/taste-skill-classics --skill "high-end-visual-design"Claude Code plugin users: taste-skill@taste-skill is unchanged. The classics plugin now has its own marketplace: /plugin marketplace add Leonxlnx/taste-skill-classics.
Also in this release:
- A cleaner README, with a wordmark instead of the banner and a TasteCode banner that reads well in dark mode.
- Old research notes,
llms.txt,skill.shand unused images are removed. - The Codex plugin now loads only
design-taste-frontend.
tasteskill v2.1.2
Fixes #151: design-taste-frontend did not load in Claude Code. The skill description added in 2.1.0 contained an unquoted : , so its YAML frontmatter failed to parse and the skill was silently dropped ("Unknown skill"). Update to get it back:
npx skills add https://github.com/Leonxlnx/taste-skill --skill "design-taste-frontend"Claude Code plugin users: /plugin update.
So it cannot happen again, every SKILL.md frontmatter is now parsed with a strict YAML parser on each push and pull request (tests/frontmatter.mjs, check-skills.yml).
Thanks to @TofiBot for the precise report.
tasteskill v2.1.1
One skill to reach for. Installing taste-skill no longer means an agent might pick an older skill for the job.
Install or upgrade
npx skills add https://github.com/Leonxlnx/taste-skill --skill "design-taste-frontend"What changed
- The classic skills are opt-in. soft, minimalist, brutalist, gpt-taste, Stitch, v1 and v2-experimental run only when you call them by name (
/high-end-visual-designin Claude Code,$minimalist-uiin Codex). An agent never picks one by itself. - Redesigns are part of taste-skill. It records the existing page in a real browser first, keeps the stack, the content and everything that works, then changes type, colour, the frame, states and stock components in that order, and proves it with before-and-after screenshots.
redesign-existing-projectsis retired. - Image generation has its own repo: Leonxlnx/imagegen-skills (
imagegen-frontend-web,imagegen-frontend-mobile,brandkit,image-to-code), same install names. full-output-enforcementis removed.- Claude Code plugins:
taste-skill@taste-skillnow carries only the default skill; the classics aretaste-skill-classics@taste-skill.
Full notes: CHANGELOG.md
tasteskill v2.1
tasteskill v2.1 builds the screens people work in, not only the pages they read, and keeps every page's frame clean.
Install or upgrade
npx skills add https://github.com/Leonxlnx/taste-skill --skill "design-taste-frontend"The install name did not change. Needs Node 22+ and Chrome, Edge or Chromium. Installs nothing, uses no API keys.
What is new
- Dashboards and app screens. The skill tells a page from an app screen. An app screen gets its own run: a style dealt from seven styles distilled from real product screens, a face taken from the brief, a shell, real data that adds up, charts that annotate what happened, every state, and its own checks (
inspect.mjs --app). Ships withassets/app.cssandassets/charts.js. - Product pages that show their app build those screens by the same rules, so the hero's screenshot looks like a working product, not grey bars.
- The frame of a page. The inspector now fails the things readers name first when a page looks wrong: no clear title, margins that do not match, a section shoved to one side with half the screen empty, random blank stretches, untitled sections, text against the edge, a title that is not readable 1.2 s after load.
- A study of the latest 100 Awwwards Sites of the Day: where pictures and footage go, how strong pages move (measured curves, durations, ten recipes), empty space and the frame.
- The scroll-scene engine: a sticky stage scrubbed by native scroll (GSAP ScrollTrigger, optional Lenis),
scripts/scenes.mjsto photograph a scene at every point of its scroll, andinspect.mjs --film. The library of tested scenes follows in v2.2.
Four blind test rounds on dashboards: round 1 lost to building without the skill (6.7 against 6.8 and 7.1); after the fixes, rounds 2 to 4 averaged 7.2 to 7.3 on the same and on unseen briefs.
Full notes: CHANGELOG.md
tasteskill v2
tasteskill v2 is a new default skill, not an edit of the old one. It gives a coding agent an art direction, real pictures and a way to check its own work in a real browser.
Install or upgrade
npx skills add https://github.com/Leonxlnx/taste-skill --skill "design-taste-frontend"The install name did not change. Needs Node 22+ and Chrome, Edge or Chromium. Installs nothing, uses no API keys.
What is new
- A library instead of adjectives. Built from a study of 247 curated sites: 20 directions, 48 hero compositions, 172 section layouts, 44 type systems, 56 palettes.
- A script deals the direction.
scripts/draw.mjsdeals three directions; the agent picks the one that can carry something only this client has. - Real pictures.
scripts/assets.mjsfinds photographs, maps and footage of the subject's world in open collections, downloads them and records the credits. - A real-browser inspector.
scripts/inspect.mjsopens the page at 1440, 768 and 390 px and fails it on eyebrow labels, hairlines, gradients, resting shadows, headlines over two lines, empty screens and covered text. - A look-and-fix loop. The agent critiques its own screenshots and fixes the top three problems, up to three rounds.
Across four test briefs built with and without the skill: 37 small labels and 249 hairline rules without it, none with it; no photographs without it, 48 with it.
Also in this release
- Codex can install the collection as a plugin (
codex plugin marketplace add Leonxlnx/taste-skill). - The previous default stays available as
design-taste-frontend-v2-experimental, and the original asdesign-taste-frontend-v1. - README rewritten around v2, with before/after examples.
Full notes: CHANGELOG.md