import React from 'react'; import { motion } from 'framer-motion'; import { useInView } from 'react-intersection-observer'; interface Skill { name: string; level: number; category: string; description: string; } interface SkillsMatrixProps { skills: Skill[]; } const SkillsMatrix: React.FC = ({ skills }) => { const [ref, inView] = useInView({ triggerOnce: true, threshold: 0.1, }); const categories = Array.from(new Set(skills.map(skill => skill.category))); return (
{categories.map((category, categoryIndex) => (

{category}

{skills .filter(skill => skill.category === category) .map((skill, skillIndex) => (
{skill.name}

{skill.description}

{skill.level}%
))}
))}
); }; export default SkillsMatrix;