skills/shadcn-svelte-management/SKILL.md
Manage UI components using MCP tools with primary focus on Svelte ecosystem. Specialized in Svelte component libraries including shadcn-svelte, Skeleton UI, and Melt UI. Use when user needs to: (1) Add new Svelte UI components to a project (2) Build complex UI features requiring multiple components (3) Research component implementations and examples (4) Get component installation commands (5) Choose appropriate Svelte component library Triggers: "add components", "UI components", "build UI", "install component", "create form", "create dialog", "svelte components", "shadcn-svelte", "skeleton ui"
npx skillsauth add ajianaz/skills-collection shadcn-svelte-managementInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Specialized in Svelte component libraries and their management:
Verify project setup:
# Check if SvelteKit project
ls src/routes/ src/lib/
If using shadcn-svelte:
npx shadcn-svelte@latest init
If using Skeleton UI:
npm install @skeletonlabs/skeleton
For simple component additions (e.g., "add a date picker"):
npx shadcn-svelte@latest add button
npx shadcn-svelte@latest add card
npx shadcn-svelte@latest add dialog
npm install @skeletonlabs/skeleton
# Import in app.css: @import '@skeletonlabs/skeleton/theme';
Create custom component with Tailwind CSS:
<!-- src/lib/components/DatePicker.svelte -->
<script lang="ts">
import { createEventDispatcher } from 'svelte';
export let value: Date = new Date();
export let placeholder = 'Select date';
const dispatch = createEventDispatcher();
</script>
<input
type="date"
bind:value
{placeholder}
on:change={(e) => dispatch('change', { value: e.target.value })}
class="w-full px-3 py-2 border rounded-lg focus:ring-2 focus:ring-blue-500"
/>
For multi-component features (e.g., "build a login form"), see references/workflows.md.
When to use Complex Build:
Svelte-specific considerations:
form, input, select, checkbox, radio-group, textareacard, dialog, sheet, drawer, tabs, containeralert, toast, skeleton, progress, spinnerbutton, dropdown-menu, navigation-menu, breadcrumbtable, badge, avatar, accordion, carousel# shadcn-svelte
npx shadcn-svelte@latest add button card form
# Skeleton UI
npm install @skeletonlabs/skeleton
# Add to app.css: @import '@skeletonlabs/skeleton/theme';
# Melt UI
npm install @melt-ui/svelte
Always run audit:
shadcn___get_audit_checklist
Shadcn provides structural foundation with default styling. For custom aesthetics:
1. shadcn-svelte
npx shadcn-svelte@latest init
npx shadcn-svelte@latest add [component-name]
src/lib/components/ui/src/app.csscomponents.json2. Skeleton UI
npm install @skeletonlabs/skeleton
src/app.css → @import '@skeletonlabs/skeleton/theme';@skeletonlabs/skeletonsrc/app.css3. Melt UI
npm install @melt-ui/svelte
4. Custom Components
For shadcn-svelte:
src/app.cssclass: directivesFor Skeleton UI:
For Custom Components:
Invoke frontend-design skill when:
Workflow for Svelte projects:
shadcn-svelte-management patterns adapted for Sveltefrontend-design for visual customization:
src/app.csstailwind.config.jsCustomization targets:
src/app.css - CSS variables, custom fonts, theme importstailwind.config.js - theme colors, fonts, animationssrc/lib/components/ui/ - component-level overridesclass: directives for dynamic stylingtools
Replace with description of the skill and when Claude should use it.
testing
Generate structured task lists from specs or requirements. IMPORTANT: After completing ANY spec via ExitSpecMode, ALWAYS ask the user: "Would you like me to generate a task list for this spec?" Use when user confirms or explicitly requests task generation from a plan/spec/PRD.
tools
Optimize SvelteKit applications by leveraging SvelteKit's full-stack architecture for instant server-side rendering and progressive enhancement. Specialized in load functions, form actions, and SvelteKit's data loading patterns. Use when: - User reports slow initial page load with loading spinners - Page uses onMount + fetch for data fetching - Store patterns cause waterfall fetching - Need to improve SEO (content not in initial HTML) - Converting client-side data fetching to server-side load functions - Implementing progressive enhancement patterns Triggers: "slow loading", "optimize fetching", "SSR data", "SvelteKit optimization", "remove loading spinner", "server-side fetch", "convert to load function", "progressive enhancement", "data fetch lambat", "loading lama"
development
Implement or extend user-facing workflows in SvelteKit applications with full-stack capabilities. Specialized in SvelteKit's load functions, form actions, and progressive enhancement. Use when the feature is primarily a UI/UX change backed by existing APIs, affects only the web frontend, and requires following SvelteKit conventions.