import Link from 'next/link' import { motion, useMotionTemplate, useMotionValue } from 'framer-motion' import { GridPattern } from '@/components/GridPattern' import { Heading } from '@/components/Heading' import { ChatBubbleIcon } from '@/components/icons/ChatBubbleIcon' import { EnvelopeIcon } from '@/components/icons/EnvelopeIcon' import { UserIcon } from '@/components/icons/UserIcon' import { UsersIcon } from '@/components/icons/UsersIcon' const clients = [ { href: '/client-installation#linux', name: 'Linux', description: 'Learn how to install the NetBird client on Linux devices.', icon: UserIcon, pattern: { y: 16, squares: [ [0, 1], [1, 3], ], }, }, { href: '/client-installation#mac-os', name: 'MacOS', description: 'Learn how to install the NetBird client on MacOS devices.', icon: ChatBubbleIcon, pattern: { y: -6, squares: [ [-1, 2], [1, 3], ], }, }, { href: '/client-installation#windows', name: 'Windows', description: 'Learn how to install the NetBird client on Windows devices.', icon: EnvelopeIcon, pattern: { y: 32, squares: [ [0, 2], [1, 4], ], }, }, { href: '/client-installation#android', name: 'Android', description: 'Learn how to install the NetBird client on Android devices.', icon: UsersIcon, pattern: { y: 22, squares: [[0, 1]], }, }, { href: '/client-installation#ios', name: 'iOS', description: 'Learn how to install the NetBird client on OS devices.', icon: UsersIcon, pattern: { y: 22, squares: [[0, 1]], }, }, ] function ClientIcon({ icon: Icon }) { return (
{client.description}