diff --git a/documentation/src/components/skill-card.tsx b/documentation/src/components/skill-card.tsx index 80898a443be0..65bc1e15717e 100644 --- a/documentation/src/components/skill-card.tsx +++ b/documentation/src/components/skill-card.tsx @@ -1,6 +1,6 @@ import React, { useState } from "react"; import Link from "@docusaurus/Link"; -import { Check } from "lucide-react"; +import { Check, Copy } from "lucide-react"; import type { Skill } from "@site/src/pages/skills/types"; function generateInstallCommand(repoUrl: string, skillId: string): string { @@ -54,10 +54,10 @@ export function SkillCard({ skill }: { skill: Skill }) { {skill.description}

- {/* Tags */} + {/* Tags - show max 4 on card, rest visible on detail page */} {skill.tags.length > 0 && (
- {skill.tags.map((tag, index) => ( + {skill.tags.slice(0, 4).map((tag, index) => ( {/* Footer with actions */} -
- {/* Install button */} -
- - +
- {/* View Source link - always show, links to Agent-Skills repo */} - e.stopPropagation()} - > - View Source → - - - {/* Author */} - {skill.author && ( - - by {skill.author} + {/* View Details and Author */} +
+ + View Details → - )} + + {/* Author */} + {skill.author && ( + + by {skill.author} + + )} +
diff --git a/documentation/src/components/ui/sidebar-filter.tsx b/documentation/src/components/ui/sidebar-filter.tsx index 5b58862453c8..e54675a6f336 100644 --- a/documentation/src/components/ui/sidebar-filter.tsx +++ b/documentation/src/components/ui/sidebar-filter.tsx @@ -9,6 +9,7 @@ export type SidebarFilterOption = { export type SidebarFilterGroup = { title: string; options: SidebarFilterOption[]; + maxHeight?: string; }; interface SidebarFilterProps { @@ -33,33 +34,49 @@ export function SidebarFilter({ groups, selectedValues, onChange }: SidebarFilte

{group.title}

-
- {group.options.map((option) => ( - - ))} +
+
+ {group.options.map((option) => ( + + ))} +
+ {group.maxHeight && ( +
+ )}
))}
); -} \ No newline at end of file +} diff --git a/documentation/src/css/custom.css b/documentation/src/css/custom.css index aa9a775be839..bda0fac4f023 100644 --- a/documentation/src/css/custom.css +++ b/documentation/src/css/custom.css @@ -463,3 +463,33 @@ main { max-width: 100%; overflow-x: hidden; } + +/* Custom scrollbar for filter sections */ +.scrollbar-visible { + overflow-y: auto; +} + +.scrollbar-visible::-webkit-scrollbar { + width: 6px; +} + +.scrollbar-visible::-webkit-scrollbar-track { + background: transparent; +} + +.scrollbar-visible::-webkit-scrollbar-thumb { + background-color: var(--grey-80); + border-radius: 3px; +} + +.scrollbar-visible::-webkit-scrollbar-thumb:hover { + background-color: var(--grey-60); +} + +[data-theme="dark"] .scrollbar-visible::-webkit-scrollbar-thumb { + background-color: var(--dark-grey-45); +} + +[data-theme="dark"] .scrollbar-visible::-webkit-scrollbar-thumb:hover { + background-color: var(--dark-grey-60); +} diff --git a/documentation/src/pages/skills/index.tsx b/documentation/src/pages/skills/index.tsx index ff8734323f07..fbc2f9c4a25b 100644 --- a/documentation/src/pages/skills/index.tsx +++ b/documentation/src/pages/skills/index.tsx @@ -36,13 +36,14 @@ export default function SkillsPage() { ]; const sidebarFilterGroups: SidebarFilterGroup[] = [ - { - title: "Tags", - options: uniqueTags - }, { title: "Source", options: sourceOptions + }, + { + title: "Tags", + options: uniqueTags, + maxHeight: "max-h-64 overflow-y-auto" } ];