'use client'; import { MessageCircle, Vote, Users } from 'lucide-react'; const ZIGZAG_POINTS = [ 40, 0, 20, 10, 30, 50, 20, 15, 0, 20, 25, 50, 10, 20, 0, 15, 10, 25, 20, 50, 0, 20, 40, 20, 25, 10, 0, 15, 0, 20, 0, 40, 10, 0, ]; function generateZigzagClipPath(yValues: number[]): string { const lastIndex = yValues.length - 1; const getX = (i: number) => `${(i / lastIndex) * 100}%`; const topEdge = yValues.map((y, i) => `${getX(i)} ${y}px`).join(', '); const bottomEdge = [...yValues] .map((y, i) => [getX(i), y] as const) .reverse() .map(([x, y]) => `${x} calc(100% - 50px + ${y}px)`) .join(', '); return `polygon(${topEdge}, ${bottomEdge})`; } export const styles = ` .shape-future { clip-path: ${generateZigzagClipPath(ZIGZAG_POINTS)}; } .metal-texture { position: relative; overflow: hidden; } .metal-texture::before { content: ''; position: absolute; inset: 0; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 300 300' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E"); opacity: 0.5; mix-blend-mode: multiply; pointer-events: none; z-index: 10; } .shape-future-title { font-family: 'Caveat', cursive; } `; const features = [ { icon: MessageCircle, text: 'Direct feedback channel' }, { icon: Vote, text: 'Feature voting' }, { icon: Users, text: 'Early adopter community' }, ]; export function ShapeTheFutureSection() { return (

Shape the future of Banatie

We're building this for developers like you. Early adopters get direct influence on our roadmap — suggest features, vote on priorities, and help us build exactly what you need.

{features.map((feature, i) => ( {feature.text} ))}
); }