--- import { getToolsData } from '../utils/dataService.js'; import ShareButton from './ShareButton.astro'; // Load tools data const data = await getToolsData(); const domains = data.domains; const phases = data.phases; const tools = data.tools; const domainAgnosticSoftware = data['domain-agnostic-software'] || []; // Get tools for each domain-agnostic section based on the tool's domain-agnostic-software field const domainAgnosticTools = domainAgnosticSoftware.map((section: any) => ({ section, tools: tools.filter((tool: any) => tool['domain-agnostic-software'] && tool['domain-agnostic-software'].includes(section.id) ) })); // Matrix shows ALL tools based on domains × phases (independent of domain-agnostic-software) const matrix: Record> = {}; domains.forEach((domain: any) => { matrix[domain.id] = {}; phases.forEach((phase: any) => { matrix[domain.id][phase.id] = tools.filter((tool: any) => tool.type !== 'concept' && // Exclude concepts from matrix tool.domains && tool.domains.includes(domain.id) && tool.phases && tool.phases.includes(phase.id) ); }); }); ---

Tool Name

Tool Name