From 3604b47137dd5de21395426637d5d5a0297da25f Mon Sep 17 00:00:00 2001 From: sasha-astiadi Date: Mon, 17 Nov 2025 17:10:47 +0100 Subject: [PATCH] refactor: convert NodeSpecs to bento grid layout with updated typography components - Replaced Heroicons with typography components (Eyebrow, H3, P, Small, CT, CP) - Changed from card grid to bento grid layout with image-based cards - Added category labels and placeholder images to each specification card - Removed hover effects and icon-based design in favor of image-focused layout - Updated container structure from Container component to standard section with max-w-7xl - Removed border decorations an --- src/pages/nodes/NodeSpecs.tsx | 148 ++++++++++++++++++---------------- 1 file changed, 77 insertions(+), 71 deletions(-) diff --git a/src/pages/nodes/NodeSpecs.tsx b/src/pages/nodes/NodeSpecs.tsx index e7e3fc5..396009d 100644 --- a/src/pages/nodes/NodeSpecs.tsx +++ b/src/pages/nodes/NodeSpecs.tsx @@ -1,114 +1,120 @@ "use client"; -import { Container } from "@/components/Container"; +import { Eyebrow, H3, P, Small, CT, CP } from "@/components/Texts"; -// Heroicons -import { - ShieldCheckIcon, - BoltIcon, - GlobeAltIcon, - ServerStackIcon, - CheckBadgeIcon, - CpuChipIcon, -} from "@heroicons/react/24/solid"; - -const nodeSpecs = [ +const cards = [ { + category: "Autonomous", title: "Autonomous Operation", description: "Runs autonomously with no central control.", - icon: ServerStackIcon, + image: + "https://tailwindcss.com/plus-assets/img/component-images/bento-01-performance.png", + rounded: "lg:rounded-tl-4xl", + innerRounded: "lg:rounded-tl-[calc(2rem+1px)]", }, { + category: "Security", title: "Encrypted by Default", description: "Fully encrypted and identity-based.", - icon: ShieldCheckIcon, + image: + "https://tailwindcss.com/plus-assets/img/component-images/bento-01-releases.png", }, { + category: "Efficiency", title: "Energy Efficient", description: "Energy-efficient and quiet, designed for 24/7 uptime.", - icon: BoltIcon, + image: + "https://tailwindcss.com/plus-assets/img/component-images/bento-01-network.png", + rounded: "lg:rounded-tr-4xl", + innerRounded: "lg:rounded-tr-[calc(2rem+1px)]", }, { + category: "Monitoring", title: "Measured Uptime", description: "Automatically measures uptime and contribution.", - icon: CheckBadgeIcon, + image: + "https://tailwindcss.com/plus-assets/img/component-images/bento-01-speed.png", + rounded: "lg:rounded-bl-4xl", + innerRounded: "lg:rounded-bl-[calc(2rem+1px)]", }, { + category: "Full Stack", title: "Full Mycelium Stack Support", - description: "Supports Mycelium Network, Cloud, Pods, and Agents.", - icon: GlobeAltIcon, + description: + "Supports Mycelium Network, Cloud, Pods, and Agents.", + image: + "https://tailwindcss.com/plus-assets/img/component-images/bento-01-integrations.png", }, - - // ✅ NEW 6th card (to complete the grid) { + category: "Edge & Home", title: "Edge & Home Ready", description: "Runs seamlessly on compact hardware for edge, home, or micro-datacenter deployments.", - icon: CpuChipIcon, + image: + "https://tailwindcss.com/plus-assets/img/component-images/bento-01-network.png", + rounded: "lg:rounded-br-4xl", + innerRounded: "lg:rounded-br-[calc(2rem+1px)]", }, ]; export function NodeSpecs() { return ( -
- {/* Top horizontal spacing */} -
-
+
+
- {/* Header */} -
-

- NODE SPECIFICATIONS -

+ Node Specifications +

Built for Reliability and Control

+

+ Each node strengthens the network and helps build a more open, + sovereign and distributed internet. +

-

- Built for Reliability and Control -

+ {/* BENTO GRID */} +
+ {cards.map((item, index) => ( +
-

- Each node strengthens the network and helps build a more open, - sovereign and distributed internet. -

-
+ {/* OUTER WHITE PLATE */} +
- {/* Cards */} -
    - {nodeSpecs.map((item) => { - const Icon = item.icon; - - return ( -
  • - {/* Title + label */} -
    -

    - {item.title} -

    + {/* IMAGE */} + - + {/* TEXT AREA */} +
    +
    + {item.category} + {item.title} + {item.description} +
    +
    - {/* Short description */} -

    - {item.description} -

    -
  • - ); - })} -
- - - {/* Bottom spacing */} -
-
+ {/* OUTLINE + SHADOW */} +
+
+ ))} +
+
); }