auto-claude: subtask-1-2 - Create CategoryFilter component with category buttons/dropdown

Created CategoryFilter component with the following features:
- Client component with 'use client' directive and framer-motion animations
- Props: categories, selectedCategory, onCategoryChange, className
- Uses lucide-react Tag icon
- Responsive design: horizontal scrollable on mobile, grid layout on desktop
- Active category highlighted with bg-[#697565] text-white
- Includes 'All' option to clear filter
- Follows established patterns from SearchBar and ContactForm
- Consistent styling with bg-zinc-900/50 and border-zinc-800
- Smooth transitions and hover states

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-25 02:39:30 +01:00
co-authored by Claude Sonnet 4.5
parent 0cc34aa007
commit cfa2bc81e6
5 changed files with 377 additions and 1 deletions
+39
View File
@@ -0,0 +1,39 @@
{
"sandbox": {
"enabled": true,
"autoAllowBashIfSandboxed": true
},
"permissions": {
"defaultMode": "acceptEdits",
"allow": [
"Read(./**)",
"Write(./**)",
"Edit(./**)",
"Glob(./**)",
"Grep(./**)",
"Read(C:\\Users\\damja\\WebstormProjects\\Portfolio\\.auto-claude\\worktrees\\tasks\\003-add-blog-search-and-category-filter/**)",
"Write(C:\\Users\\damja\\WebstormProjects\\Portfolio\\.auto-claude\\worktrees\\tasks\\003-add-blog-search-and-category-filter/**)",
"Edit(C:\\Users\\damja\\WebstormProjects\\Portfolio\\.auto-claude\\worktrees\\tasks\\003-add-blog-search-and-category-filter/**)",
"Glob(C:\\Users\\damja\\WebstormProjects\\Portfolio\\.auto-claude\\worktrees\\tasks\\003-add-blog-search-and-category-filter/**)",
"Grep(C:\\Users\\damja\\WebstormProjects\\Portfolio\\.auto-claude\\worktrees\\tasks\\003-add-blog-search-and-category-filter/**)",
"Read(C:\\Users\\damja\\WebstormProjects\\Portfolio\\.auto-claude\\worktrees\\tasks\\003-add-blog-search-and-category-filter\\.auto-claude\\specs\\003-add-blog-search-and-category-filter/**)",
"Write(C:\\Users\\damja\\WebstormProjects\\Portfolio\\.auto-claude\\worktrees\\tasks\\003-add-blog-search-and-category-filter\\.auto-claude\\specs\\003-add-blog-search-and-category-filter/**)",
"Edit(C:\\Users\\damja\\WebstormProjects\\Portfolio\\.auto-claude\\worktrees\\tasks\\003-add-blog-search-and-category-filter\\.auto-claude\\specs\\003-add-blog-search-and-category-filter/**)",
"Read(C:\\Users\\damja\\WebstormProjects\\Portfolio\\.auto-claude/**)",
"Write(C:\\Users\\damja\\WebstormProjects\\Portfolio\\.auto-claude/**)",
"Edit(C:\\Users\\damja\\WebstormProjects\\Portfolio\\.auto-claude/**)",
"Glob(C:\\Users\\damja\\WebstormProjects\\Portfolio\\.auto-claude/**)",
"Grep(C:\\Users\\damja\\WebstormProjects\\Portfolio\\.auto-claude/**)",
"Bash(*)",
"WebFetch(*)",
"WebSearch(*)",
"mcp__context7__resolve-library-id(*)",
"mcp__context7__get-library-docs(*)",
"mcp__graphiti-memory__search_nodes(*)",
"mcp__graphiti-memory__search_facts(*)",
"mcp__graphiti-memory__add_episode(*)",
"mcp__graphiti-memory__get_episodes(*)",
"mcp__graphiti-memory__get_entity_edge(*)"
]
}
}