import { motion } from 'framer-motion'; import type { ThemeProps } from '../types'; const stackGroups = [ { label: 'FRONTEND', items: ['React', 'TypeScript', 'Next.js', 'Tailwind CSS', 'Vite'], }, { label: 'BACKEND', items: ['Node.js', 'Python', 'Express', 'FastAPI', 'NestJS'], }, { label: 'DATOS', items: ['PostgreSQL', 'MongoDB', 'Redis', 'Prisma', 'Elasticsearch'], }, { label: 'CLOUD & OPS', items: ['AWS', 'Docker', 'GitHub Actions', 'Terraform', 'Linux'], }, { label: 'INTEGRACIONES', items: ['REST', 'GraphQL', 'Stripe', 'OAuth 2.0', 'Webhooks'], }, ]; export const Stack = ({ isNavyBg }: ThemeProps) => { const bg = isNavyBg ? '#0f1520' : '#f9f9f7'; const text = isNavyBg ? '#eef0f4' : '#0a0a0a'; const sub = isNavyBg ? 'rgba(255,255,255,0.35)' : '#6a6866'; const border = isNavyBg ? 'rgba(255,255,255,0.07)' : '#dddbd5'; const tagBg = isNavyBg ? 'rgba(255,255,255,0.04)' : '#f0efec'; return (
{/* Header */}
Las herramientas son el medio

Las herramientas son el medio.
El sistema es el fin.

Elegimos la tecnología correcta para cada problema. No hay un stack universal.

{/* Stack groups */}
{stackGroups.map((group, i) => ( {group.label}
{group.items.map(item => ( {item} ))}
))}
{/* Footnote */} Estas son las herramientas con las que trabajamos actualmente. La elección depende siempre del problema, no de la preferencia.
); };