--- description: 'Scaffold a new Svelte 5 component for The Collective Hub. Follows runes convention, snippets over slots, Tailwind CSS, and Lucide icons.' agent: 'agent' --- Scaffold a Svelte 5 component for The Collective Hub: ${input} Follow all conventions in: - [components.instructions.md](.github/instructions/components.instructions.md) - [svelte5.instructions.md](.github/instructions/svelte5.instructions.md) - [icons.instructions.md](.github/instructions/icons.instructions.md) - [tailwindcss.instructions.md](.github/instructions/tailwindcss.instructions.md) ## Conventions 1. **PascalCase filename** — `TheComponent.svelte` 2. **Place in appropriate folder:** - `src/lib/components/ui/` — generic reusable UI primitives - `src/lib/components/layout/` — structural shell components - Route directory — page-specific components 3. **Use Svelte 5 runes**: - `$props()` for component props with inline type - `$state()` for local state - `$derived()` for computed values - `$effect()` for side effects (sparingly) - `$bindable()` for two-way bindings 4. **Snippets over slots** for composition patterns 5. **Tailwind CSS** for styling 6. **Lucide icons** from `@lucide/svelte` — import individual icons by name 7. **No `svelte-ignore` comments** — fix accessibility and type issues properly ## Example Component ```svelte
{description}
{/if}Count: {count} (doubled: {doubled})