Agent skill

Smooth Shadow Ring

by Dinil-Thilakarathne in Dinil-Thilakarathne/sona-ui

A skill your agent uses when styling any elevated surface (card, dialog, popover, dropdown, menu, tooltip, sheet, toast) in a Tailwind project that has shadow-plugin installed.

MITAuto-check passedFrontend & Design

Install Smooth Shadow Ring

skills CLI
$ npx skills add Dinil-Thilakarathne/sona-ui --skill smooth-shadow-ring -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Dinil-Thilakarathne/sona-ui smooth-shadow-ring --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Dinil-Thilakarathne/sona-ui.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/smooth-shadow-ring .claude/skills/smooth-shadow-ring && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
smooth-shadow-ring
GitHub stars
118
Used in
1 other repo
Token cost
~1k tokens
SKILL.md length
481 words
Files
1
Skills in repo
10
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when styling any elevated surface (card, dialog, popover, dropdown, menu, tooltip, sheet, toast) in a Tailwind project that has shadow-plugin installed.

  • Styling any elevated surface (card
  • SKILL.md covers When this applies, The problem, The rule and Coloring, plus 3 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md
  • Toast) in a Tailwind project that has shadow-plugin installed

What it does

Smooth Shadow Ring is an agent skill from Dinil-Thilakarathne/sona-ui. Use when styling any elevated surface (card, dialog, popover, dropdown, menu, tooltip, sheet, toast) in a Tailwind project that has shadow-plugin installed. Prevents the double-border artifact caused by pairing a border/ring with a shadow, by routing elevation through the smooth-shadow-ring- utilities.

Its SKILL.md is about 1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Frontend & Design, covering CSS and styling. It works with Tailwind CSS. The repository describes itself as: A modern UI component library built with React and TailwindCSS to help you build beautiful and accessible web applications faster. The licence is MIT.

When your agent uses it

  • Styling any elevated surface (card
  • Toast) in a Tailwind project that has shadow-plugin installed

Example prompts

  • “/smooth-shadow-ring”

What it can do on your machine

Read from SKILL.md and the folder at commit 9a72ffe. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are html).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Smooth Shadow Ring loads about 1k tokens when it runs. Until then it costs about 81 tokens; SKILL.md has 481 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~81
When it runs · the whole SKILL.md, loaded when a task matches
~1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from Dinil-Thilakarathne/sona-ui at commit 9a72ffe, republished under its MIT licence (© Dinil-Thilakarathne). 481 words, ~1,014 tokens.

Download SKILL.mdSave it as .claude/skills/smooth-shadow-ring/SKILL.md (or your agent's skills folder).
name
smooth-shadow-ring
description
Use when styling any elevated surface (card, dialog, popover, dropdown, menu, tooltip, sheet, toast) in a Tailwind project that has shadow-plugin installed. Prevents the double-border artifact caused by pairing a border/ring with a shadow, by routing elevation through the smooth-shadow-ring-* utilities.

Elevated surfaces: use smooth-shadow-ring, never border + shadow

When this applies

Any element that floats above the page surface: cards, dialogs, modals, popovers, dropdowns, menus, tooltips, sheets, toasts, command palettes.

The problem

Putting a border-* (or ring-*) and a shadow-* on the same element draws two stacked edges: the border paints a hard 1px stroke, and the shadow begins just outside it. The result is a visible double border, a crisp line then a soft one. It looks heavy, greyed, and cheap.

The rule

If you are about to write a border-* or ring-* class next to any shadow-* on an elevated surface, use smooth-shadow-ring-{size} instead. It bakes a 1px hairline ring into the final shadow layer, so the edge dissolves into the shadow as one continuous stroke.

  • border shadow-md → smooth-shadow-ring-md
  • ring-1 ring-neutral-200 shadow-lg → smooth-shadow-ring-lg
  • Sizes: smooth-shadow-ring-xs, -sm, -md (or bare smooth-shadow-ring), -lg, -xl, -2xl
  • Never keep a border or ring on an element that already has smooth-shadow-ring-*. The ring is already in there; a second edge doubles up.
  • If the surface should have no edge stroke at all, use plain smooth-shadow-{size} (no ring), not a border.

Coloring

The ring and shadow tint independently and compose on the same element:

  • shadow-{color} tints the shadow, e.g. shadow-blue-500
  • smooth-ring-{color} tints the ring, e.g. smooth-ring-black/10, smooth-ring-blue-500/40

The ring defaults to rgba(0,0,0,0.05) and flips to rgba(255,255,255,0.18) in dark mode — under a .dark class, data-theme="dark", or (for OS-preference dark modes) when the page declares color-scheme: light dark. It never keys off prefers-color-scheme alone, so light-only sites keep the light ring for every visitor. If the site's dark mode is driven purely by a prefers-color-scheme media query, make sure it declares :root { color-scheme: light dark; } so the ring follows.

The dark alpha is much higher than the light one on purpose. The ring paints outside the surface, so its rendered colour comes from the page behind it, not from the surface it outlines. A white hairline therefore lightens toward a raised dark surface, and too low an alpha makes the edge land on the surface's own colour and disappear. If a surface is light enough to sit near the ring anyway (neutral-700 and up on a dark page), set smooth-ring-* explicitly.

Show full SKILL.md (117 more words)Show less

Ring width

The hairline is 1px by default and follows the project's Tailwind ring width automatically, so a project with @theme { --default-ring-width: 0.5px; } gets a 0.5px hairline here with no extra setup. Do not hardcode a width to match; override --smooth-ring-width at any scope only when it must differ from the project ring width — per element via [--smooth-ring-width:2px].

Overriding

The utilities carry no !important and follow the normal cascade, so a later utility, an inline style, or a JS animation on box-shadow overrides them normally. When one has to win against CSS that outranks it — a component library's own box-shadow, which usually ships unlayered — use Tailwind's important modifier on that element instead of a global override:

html
<div class="smooth-shadow-ring-md!">…</div>

Example

html
<!-- Wrong: border + shadow renders a double edge -->
<div class="rounded-2xl border border-neutral-200 shadow-md">…</div>

<!-- Right: one continuous edge -->
<div class="rounded-2xl smooth-shadow-ring-md">…</div>

<!-- Right: tuned ring + tinted shadow -->
<div
  class="rounded-2xl smooth-shadow-ring-md smooth-ring-black/10 shadow-blue-500"
>
  …
</div>

© Dinil-Thilakarathne, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/smooth-shadow-ring of Dinil-Thilakarathne/sona-ui.

Open the folder on GitHubat commit 9a72ffe

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in Dinil-Thilakarathne/sona-ui, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Smooth Shadow Ring next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Smooth Shadow Ring compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Smooth Shadow Ring this skillDinil-Thilakarathne/sona-ui1181 repos~1kAutomated safety check: PassMIT
Tailwindcss Developmentanonaddy/anonaddy4.9k10 repos~865Automated safety check: PassMIT
UI StylingOhh-889/skyroc79513 repos~2.5kAutomated safety check: PassMIT
MCP Developmentcoollabsio/coolify63k1 repos~949Automated safety check: PassMIT
Kill AI Slopyetone/kill-ai-slop1.3k—~1.4kAutomated safety check: PassApache-2.0
Cosscrafter-station/petdex4.2k—~1.4kAutomated safety check: PassMIT

Similar skills

  • Tailwindcss Development

    anonaddy/anonaddy

    Always invoke when the user's message includes 'tailwind' in any form.

    4.9k GitHub starsUsed in 10 repos~865 tokens
    Frontend & DesignAuto-check passed
  • UI Styling

    Ohh-889/skyroc

    Create beautiful, accessible user interfaces with shadcn/ui components (built on Radix UI + Tailwind), Tailwind CSS utility-first styling, and canvas-based visual designs.

    795 GitHub starsUsed in 13 repos~2.5k tokens
    Frontend & DesignAuto-check passed
  • MCP Development

    coollabsio/coolify

    A skill your agent uses for Laravel MCP development. An agent skill from coollabsio/coolify.

    63k GitHub starsUsed in 1 repo~949 tokens
    Frontend & DesignAuto-check passed
  • Kill AI Slop

    yetone/kill-ai-slop

    Find and remove AI slop — the generic, machine-default visual and copy tics of vibe-coded products — from a web project.

    1.3k GitHub stars~1.4k tokensUpdated 25 days ago
    Frontend & DesignAuto-check passed
  • Coss

    crafter-station/petdex

    Helps implement coss UI components correctly. An agent skill from crafter-station/petdex.

    4.2k GitHub stars~1.4k tokensUpdated today
    Frontend & DesignAuto-check passed
  • Official daisyUI skill for Tailwind CSS projects, routing to install, usage, configuration, color and per-component guides before writing any HTML or JSX with its classes.

    43k GitHub stars~1.3k tokensUpdated 2 days ago
    Frontend & DesignAuto-check passed

More from Dinil-Thilakarathne/sona-ui

All 10 skills in this repo
  • Oklch Skill

    Dinil-Thilakarathne/sona-ui

    OKLCH color space for web projects. An agent skill from Dinil-Thilakarathne/sona-ui.

    118 GitHub starsUsed in 1 repo~1.2k tokens
    Auto-check passed
  • Sona UI

    Dinil-Thilakarathne/sona-ui

    Discover and integrate Sona UI registry components. An agent skill from Dinil-Thilakarathne/sona-ui.

    118 GitHub stars~1.1k tokensUpdated 3 days ago
    Auto-check passed
  • Add Sona Component

    Dinil-Thilakarathne/sona-ui

    Integrate a new component into the Sona UI library end to end — the full per-component pipeline of writing the component, demo, docs, registry entry, nav link, playground controls, regenerating the…

    118 GitHub stars~2.2k tokensUpdated 3 days ago
    Auto-check passed
  • Component Anatomy

    Dinil-Thilakarathne/sona-ui

    Create a source-backed Inspection Board around an existing Sona UI component for social demonstrations and later documentation experiments.

    118 GitHub stars~1.9k tokensUpdated 3 days ago
    Auto-check passed
  • Design Motion Principles

    Dinil-Thilakarathne/sona-ui

    Motion and interaction design expert based on Emil Kowalski, Jakub Krehel, and Jhey Tompkins' techniques.

    118 GitHub starsUsed in 1 repo~1.7k tokens
    Auto-check passed
  • Promote Portfolio Component

    Dinil-Thilakarathne/sona-ui

    Promote a finished Craft, experimental UI, or reusable React component from the user's portfolio into the Sona UI library through an approval-gated two-phase workflow.

    118 GitHub stars~2.2k tokensUpdated 3 days ago
    Auto-check passed

Works with

Questions about Smooth Shadow Ring

What does Smooth Shadow Ring do?

A skill your agent uses when styling any elevated surface (card, dialog, popover, dropdown, menu, tooltip, sheet, toast) in a Tailwind project that has shadow-plugin installed. Smooth Shadow Ring is an agent skill from Dinil-Thilakarathne/sona-ui. Use when styling any elevated surface (card, dialog, popover, dropdown, menu, tooltip, sheet, toast) in a Tailwind project that has shadow-plugin installed.

When should I use Smooth Shadow Ring?

Smooth Shadow Ring fits situations like: styling any elevated surface (card; toast) in a Tailwind project that has shadow-plugin installed.

How do I install Smooth Shadow Ring in Claude Code?

Run `npx skills add Dinil-Thilakarathne/sona-ui --skill smooth-shadow-ring -a claude-code`. Or copy the skill folder (.agents/skills/smooth-shadow-ring in Dinil-Thilakarathne/sona-ui) into .claude/skills/smooth-shadow-ring in your project. Claude Code loads it when a task matches its description.

How do I install Smooth Shadow Ring in Codex?

Run `npx skills add Dinil-Thilakarathne/sona-ui --skill smooth-shadow-ring -a codex`. Or copy the skill folder (.agents/skills/smooth-shadow-ring in Dinil-Thilakarathne/sona-ui) into .agents/skills/smooth-shadow-ring in your project. Codex loads it when a task matches its description.

Can I use Smooth Shadow Ring in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Dinil-Thilakarathne/sona-ui --skill smooth-shadow-ring -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/smooth-shadow-ring, .gemini/skills/smooth-shadow-ring, .github/skills/smooth-shadow-ring and .opencode/skills/smooth-shadow-ring in your project.

What does Smooth Shadow Ring need to run?

SKILL.md names no scripts, command-line tools or credentials: Smooth Shadow Ring is instructions for the agent only.

Does Smooth Shadow Ring access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Smooth Shadow Ring safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Smooth Shadow Ring use?

Smooth Shadow Ring is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Smooth Shadow Ring use?

About 1k tokens (SKILL.md is roughly 4.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Smooth Shadow Ring?

Skills that share tags, products or a category with Smooth Shadow Ring: Tailwindcss Development (anonaddy/anonaddy, 4.9k stars), UI Styling (Ohh-889/skyroc, 795 stars), MCP Development (coollabsio/coolify, 63k stars) and Kill AI Slop (yetone/kill-ai-slop, 1.3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Smooth Shadow Ring?

Dinil-Thilakarathne (a GitHub user) maintains it in Dinil-Thilakarathne/sona-ui, which has 118 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 7, 2026.

Source: Dinil-Thilakarathne/sona-ui on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.