diff --git a/src/components/ToolCard.astro b/src/components/ToolCard.astro index 2df6f74..70ce3cf 100644 --- a/src/components/ToolCard.astro +++ b/src/components/ToolCard.astro @@ -1,6 +1,5 @@ --- -// src/components/ToolCard.astro (Updated) -import ContributionButton from './ContributionButton.astro'; +// src/components/ToolCard.astro (ENHANCED - Added data attributes for filtering) import ShareButton from './ShareButton.astro'; export interface Props { @@ -43,9 +42,27 @@ const cardClass = isConcept ? 'card card-concept tool-card' : isMethod ? 'card card-method tool-card' : hasValidProjectUrl ? 'card card-hosted tool-card' : (tool.license !== 'Proprietary' ? 'card card-oss tool-card' : 'card tool-card'); + +// ENHANCED: Data attributes for filtering +const toolDataAttributes = { + 'data-tool-name': tool.name.toLowerCase(), + 'data-tool-type': tool.type, + 'data-tool-domains': (tool.domains || []).join(','), + 'data-tool-phases': (tool.phases || []).join(','), + 'data-tool-tags': (tool.tags || []).join(',').toLowerCase(), + 'data-tool-platforms': (tool.platforms || []).join(','), + 'data-tool-license': tool.license || '', + 'data-tool-skill': tool.skillLevel, + 'data-tool-description': tool.description.toLowerCase() +}; --- -
+

@@ -94,7 +111,7 @@ const cardClass = isConcept ? 'card card-concept tool-card' : - {isMethod ? 'Methode' : tool.license === 'Proprietary' ? 'Prop.' : tool.license?.split(' ')[0]} + {isConcept ? 'Konzept' : isMethod ? 'Methode' : tool.license === 'Proprietary' ? 'Prop.' : tool.license?.split(' ')[0]}

@@ -106,45 +123,29 @@ const cardClass = isConcept ? 'card card-concept tool-card' : ))}
- +
{isConcept ? ( - -
- - Mehr erfahren - - -
+ + Mehr erfahren + ) : isMethod ? ( - -
- - Zur Methode - - -
+ + Zur Methode + ) : hasValidProjectUrl ? ( - -
- - + ) : ( - - + + Software-Homepage + )}
\ No newline at end of file diff --git a/src/components/ToolFilters.astro b/src/components/ToolFilters.astro index 760d649..043da05 100644 --- a/src/components/ToolFilters.astro +++ b/src/components/ToolFilters.astro @@ -1,11 +1,9 @@ --- import { getToolsData } from '../utils/dataService.js'; - // Load tools data const data = await getToolsData(); - const domains = data.domains; const phases = data.phases; @@ -106,7 +104,6 @@ const sortedTags = Object.entries(tagFrequency) -
@@ -127,7 +124,6 @@ const sortedTags = Object.entries(tagFrequency)
- \ No newline at end of file