Portfolio effects
Agent skill that plans colors, fonts, and motion from real catalogs — then ships UI.
npx -y skills add shivtchandra/design-director --skill portfolio-effectsAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 23 days oldThe repository was created 23 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
A database of portfolio interaction recipes across 9 categories (Text & Type, Scroll, Cursor, Card / Object, Ambient, Audio, Loading, Navigation, Easter Egg). Supports pure HTML/CSS/JS and React/Framer Motion. Query using `node scripts/search-effects.js` to find effects and copy code directly into workspace files. For full visual planning (mood, colors, fonts, then motion), use the design-director skill instead.
SKILL.md
5.4 KB, ~1.2k tokens by cl100k_base, as published. Nobody here has run it
Portfolio Effects Playground - AI Agent Skill
This skill provides access to a searchable database of high-quality portfolio interaction recipes and visual micro-interactions. Use this database to copy, adapt, or build interactive components in portfolio websites, landing pages, or user interfaces.
For end-to-end design direction (mood → palette → type → layout → motion), use design-director via npx skills add shivtchandra/design-director --skill design-director.
When to Apply
Use this skill when the task involves adding motion effects, custom cursor interactions, audio feedback, loading animations, custom scroll-driven animations, or micro-interactions to the client-side code — and the visual system is already decided.
Primary Use Cases
- Text & Typography: Scramble reveals, typewriter loops, word warp animations, odometer counts, gradient text sweeps, VHS glitch text.
- Scroll Animations: Ambient glows, reading progress indicators, marquee tickers, section counters, parallax layers, vertical SVG line draws, sticky section headers.
- Cursors & Pointers: Elastic SVG cursors, custom pointer follow labels, magnetic attraction buttons, canvas trail particles, hover ripples.
- Cards & Objects: 3D holographic tilt, spotlight gradients, double-click card flips, hover border traces, audio vinyl record scratching, tag scatter on hover.
- Ambient & Audio: Sound effect synthesizers (clicks, chimes, drones), live availability status dots, starfield canvases, time-of-day backgrounds.
- Navigation & Loading: Letterpress page introductions, cinematic curtain openers, page transition morphs, active section nav highlights, needle-lift back-to-top buttons.
- Easter Eggs: Konami code overlays, dev console signatures, rage-click surprises, idle disco screens.
Core Guidelines & Quality Checks
When selecting or writing code based on these effects, you MUST enforce the following guidelines:
1. Accessibility (WCAG & Platform Idioms)
- Reduced Motion: Always wrap complex animations (especially scroll-jacking, glitches, canvas starfields) in media queries or hooks checking
prefers-reduced-motion:@media (prefers-reduced-motion: reduce) { .animated-el { animation: none; transform: none; transition: none; } } - Focus Rings: Never remove outline/focus states on interactive buttons or clickable elements without providing a distinct custom focus ring.
- Labels: Ensure all icon-only triggers (audio toggle, back-to-top needle) have descriptive
aria-labeloraria-liveattributes. - Keyboard Navigation: Any modal or overlay (like the Konami code modal) must be dismissible with the
Escapekey and support full keyboard focus traversal.
2. Interaction & Spacing
- Touch Targets: Minimum interactive size must be
44x44pxwith a minimum of8pxspacing between adjacent triggers. - Sound Activation: Any Web Audio effect (UI clicks, hover chimes, drones) MUST be gated behind an initial user gesture (e.g. an "Enable Audio" speaker button) to avoid browser blocking and user annoyance. Keep gain/volumes very low (e.g.,
0.04-0.08).
3. Performance & Rendering
- Main Thread Budget: Keep per-frame updates under
16.7ms(60fps). Batch DOM reads and writes; avoid layout thrashing. - Transform & Opacity: Animate positions, scales, and fades using GPU-accelerated properties (
transformandopacity). Avoid animating layout properties (width,height,top,left) which trigger reflows. - Viewport Bounds: Ensure canvas/trail elements use
ResizeObserveror dynamic window-size updates to prevent scrollbars or content cropping.
Querying the Database
To search the database or retrieve clean code snippets, run the search command in the shell:
node scripts/search-effects.js "<query>" [options]
Options
-c, --cat <category>: Filter by category (e.g., "Scroll", "Text & Type", "Cursor", "Audio", "Loading").-t, --tech <tech>: Filter by technology keywords (e.g., "Framer Motion", "Canvas", "SVG", "Web Audio API").-x, --complexity <level>: Filter by complexity ("easy", "medium", "hard").-s, --html: Include full standalone HTML/CSS/JS snippet code in the output.-r, --react: Include clean, copy-paste ready React component/hook snippet code in the output.
Examples
-
Find all glitch-related effects:
node scripts/search-effects.js "glitch" -
Retrieve the React code for a scramble heading reveal:
node scripts/search-effects.js "01" --react -
Browse all easy cursor effects:
node scripts/search-effects.js --cat "Cursor" --complexity "easy" -
Retrieve HTML code for a magnetic button:
node scripts/search-effects.js "24" --html
Once you have queried the matching snippet, integrate the code directly into the target project files, matching the layout structure, CSS framework, and packaging conventions of the host repository.
Gives 2 of the 12 instructions most css styling skills give in ~1.2k tokens
Counted across 586 of the 596 authors here whose files we hold, read 2026-08-06
- avoid excessive centered layoutsin 55 of 586, across 12 files
- bundle code into single HTML filein 54 of 586, across 14 files
- Respect prefers-reduced-motion user settingsin 52 of 586, across 35 files
- avoid purple gradientsin 51 of 586, across 11 files
- avoid uniform rounded cornersin 51 of 586, across 11 files
- avoid Inter fontin 51 of 586, across 11 files
- edit generated files to develop artifactin 50 of 586, across 10 files
- animate only transform and opacity propertieshere, and in 43 of 586
- Make touch targets at least 44x44 pixelshere, and in 41 of 586, across 15 files
- Ensure minimum color contrast of 4.5:1in 39 of 586, across 10 files
- use tailwind cssin 39 of 586, across 24 files
- Use SVG icons instead of emojisin 38 of 586, across 11 files
Said here and by no other author read
- run the search command to find effects
- filter effects by category, technology, or complexity
- integrate the code into the target project
- match the layout structure and conventions
- wrap complex animations in reduced motion checks
- provide distinct custom focus rings
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.