Compare commits
2 Commits
39b748cdac
...
0f2f6df299
| Author | SHA1 | Date | |
|---|---|---|---|
| 0f2f6df299 | |||
| c56f67ae2e |
BIN
public/images/iot-gdb6f0c390_1280-1024x706.webp
Normal file
|
After Width: | Height: | Size: 103 KiB |
BIN
public/images/kubernetes.webp
Normal file
|
After Width: | Height: | Size: 90 KiB |
BIN
public/images/linux.png
Normal file
|
After Width: | Height: | Size: 150 KiB |
BIN
public/images/logo/1_eVqphQ2aNKxqHPMPxjRzAA (1).png
Normal file
|
After Width: | Height: | Size: 286 KiB |
BIN
public/images/logo/1_eVqphQ2aNKxqHPMPxjRzAA.png
Normal file
|
After Width: | Height: | Size: 286 KiB |
BIN
public/images/logo/images.png
Normal file
|
After Width: | Height: | Size: 7.6 KiB |
BIN
public/images/vm.webp
Normal file
|
After Width: | Height: | Size: 78 KiB |
@@ -75,7 +75,7 @@ export function CloudArchitecture() {
|
|||||||
<Button variant="solid" color="cyan" href="/start">
|
<Button variant="solid" color="cyan" href="/start">
|
||||||
Get Started
|
Get Started
|
||||||
</Button>
|
</Button>
|
||||||
<Button variant="outline" color="gray" href="/docs">
|
<Button variant="outline" color="white" href="/docs">
|
||||||
Explore Docs
|
Explore Docs
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,58 +1,95 @@
|
|||||||
import {
|
'use client';
|
||||||
CpuChipIcon,
|
|
||||||
CubeIcon,
|
|
||||||
ServerIcon,
|
|
||||||
} from '@heroicons/react/24/solid'
|
|
||||||
import { Eyebrow, H3, P, CT, CP } from '@/components/Texts'
|
|
||||||
import { Container } from '@/components/Container'
|
import { Container } from '@/components/Container'
|
||||||
|
import { Eyebrow, H3, P } from '@/components/Texts'
|
||||||
|
import { Button } from '@/components/Button'
|
||||||
|
|
||||||
const capabilities = [
|
const capabilities = [
|
||||||
{
|
{
|
||||||
name: 'Containers',
|
title: 'Containers & K3s',
|
||||||
description: 'Services, web apps, APIs. Fully compatible with Kubernetes.',
|
description:
|
||||||
icon: CubeIcon,
|
'Deploy services, web apps, and APIs with full Kubernetes compatibility.',
|
||||||
|
icon: (
|
||||||
|
<div className=" flex items-center justify-center">
|
||||||
|
<img src="/images/kubernetes.webp" alt="Kubernetes" className="h-full w-full object-cover" />
|
||||||
|
</div>
|
||||||
|
),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'Virtual Machines',
|
title: 'Virtual Machines',
|
||||||
description:
|
description:
|
||||||
'Legacy apps and specialized runtime stacks. Secure boot + attestation included.',
|
'Run legacy apps and specialized stacks with secure boot and attestation.',
|
||||||
icon: ServerIcon,
|
icon: (
|
||||||
|
<div className="flex items-center justify-center">
|
||||||
|
<img src="/images/vm.webp" alt="Virtual Machines" className="h-full w-full object-cover" />
|
||||||
|
</div>
|
||||||
|
),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'Native Linux Workloads',
|
title: 'Native Linux Workloads',
|
||||||
description:
|
description:
|
||||||
'Agents, batch jobs, tooling. Runs statelessly anywhere.',
|
'Execute agents, batch jobs, and custom tooling statelessly across the grid.',
|
||||||
icon: CpuChipIcon,
|
icon: (
|
||||||
|
<div className="flex items-center justify-center">
|
||||||
|
<img src="/images/linux.png" alt="Linux" className="h-full w-full object-cover" />
|
||||||
|
</div>
|
||||||
|
),
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
|
|
||||||
export function ComputeCapabilities() {
|
export function ComputeCapabilities() {
|
||||||
return (
|
return (
|
||||||
<section className="bg-white py-24 sm:py-32">
|
<section className="bg-[#121212] w-full max-w-8xl mx-auto">
|
||||||
|
{/* Top horizontal spacer */}
|
||||||
|
<div className="max-w-7xl mx-auto py-6 border border-t-0 border-b-0 border-gray-800 bg-transparent" />
|
||||||
|
<div className="w-full border-t border-l border-r border-gray-800" />
|
||||||
|
|
||||||
|
{/* Boxed container */}
|
||||||
|
<div className="relative mx-auto max-w-7xl border border-t-0 border-b-0 border-gray-800 bg-[#111111] py-12">
|
||||||
<Container>
|
<Container>
|
||||||
<div className="mx-auto max-w-3xl text-center">
|
<div className="mx-auto max-w-4xl sm:text-center">
|
||||||
<Eyebrow>CAPABILITIES</Eyebrow>
|
<Eyebrow className="text-cyan-400">CAPABILITIES</Eyebrow>
|
||||||
<H3 className="mt-4 text-gray-900">What You Can Run</H3>
|
<H3 className="text-3xl lg:text-4xl font-medium tracking-tight text-white">
|
||||||
<P className="mt-6 text-gray-600">
|
What You Can Run
|
||||||
Mycelium Compute supports multiple workload types on a single
|
</H3>
|
||||||
execution fabric.
|
<P className="mt-6 text-lg text-gray-300">
|
||||||
|
Mycelium Compute supports multiple workload types on a single execution
|
||||||
|
fabric, from legacy VMs to modern Kubernetes clusters.
|
||||||
</P>
|
</P>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="mx-auto mt-16 max-w-5xl">
|
{/* Card layout */}
|
||||||
<dl className="grid grid-cols-1 gap-12 sm:grid-cols-2 lg:grid-cols-3">
|
<ul
|
||||||
{capabilities.map((feature) => (
|
role="list"
|
||||||
<div key={feature.name} className="flex flex-col text-center">
|
className="mx-auto mt-12 grid max-w-2xl grid-cols-1 gap-6 text-sm sm:grid-cols-2 lg:max-w-none lg:grid-cols-3 md:gap-y-10"
|
||||||
<div className="mx-auto flex size-12 items-center justify-center rounded-xl bg-cyan-50">
|
>
|
||||||
<feature.icon aria-hidden="true" className="size-6 text-cyan-600" />
|
{capabilities.map((capability) => (
|
||||||
</div>
|
<li
|
||||||
<CT className="mt-6 text-gray-900">{feature.name}</CT>
|
key={capability.title}
|
||||||
<CP className="mt-2 text-gray-600">{feature.description}</CP>
|
className="rounded-xl border border-gray-800 bg-[#111]/60 p-6 text-center lg:text-left"
|
||||||
</div>
|
>
|
||||||
|
{capability.icon}
|
||||||
|
<h3 className="text-lg font-semibold text-white">{capability.title}</h3>
|
||||||
|
<p className="mt-2 text-gray-400 leading-snug">{capability.description}</p>
|
||||||
|
</li>
|
||||||
))}
|
))}
|
||||||
</dl>
|
</ul>
|
||||||
|
|
||||||
|
{/* Button section */}
|
||||||
|
<div className="mx-auto mt-12 flex justify-center gap-6">
|
||||||
|
<Button variant="solid" color="cyan" href="#">
|
||||||
|
Get Started
|
||||||
|
</Button>
|
||||||
|
<Button variant="outline" color="white" href="#">
|
||||||
|
Explore Docs
|
||||||
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
</Container>
|
</Container>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{/* Bottom border + spacer */}
|
||||||
|
<div className="w-full border-b border-gray-800" />
|
||||||
|
<div className="max-w-7xl mx-auto py-6 border border-t-0 border-b-0 border-gray-800 bg-transparent" />
|
||||||
</section>
|
</section>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,35 +1,51 @@
|
|||||||
'use client'
|
import { H3, Eyebrow } from "@/components/Texts"
|
||||||
|
import { Button } from "@/components/Button"
|
||||||
|
|
||||||
import { Button } from '@/components/Button'
|
export function ComputeHero({ onGetStartedClick = () => {} }: { onGetStartedClick?: () => void }) {
|
||||||
import { Eyebrow, P, H3 } from '@/components/Texts'
|
|
||||||
|
|
||||||
export function ComputeHero() {
|
|
||||||
return (
|
return (
|
||||||
<div className="relative bg-white">
|
<div className="">
|
||||||
<div className="relative h-80 overflow-hidden bg-transparent md:absolute md:right-0 md:h-full md:w-1/3 lg:w-1/2">
|
{/* Boxed container */}
|
||||||
<img
|
<div
|
||||||
alt=""
|
className="relative mx-auto max-w-7xl border border-t-0 border-b-0 border-gray-200 bg-white overflow-hidden bg-contain bg-right bg-no-repeat"
|
||||||
src="/images/computehero.webp"
|
style={{ backgroundImage: "url('/images/computehero.webp')", backgroundSize: "contain" }}
|
||||||
className="size-full object-contain"
|
>
|
||||||
/>
|
{/* Inner padding */}
|
||||||
|
<div className="px-6 py-16 lg:py-16">
|
||||||
</div>
|
<div className="max-w-xl lg:pl-6">
|
||||||
<div className="relative mx-auto max-w-7xl py-12 lg:py-24 lg:px-8">
|
<Eyebrow>
|
||||||
<div className="max-w-2xl pr-6 pl-6 md:mr-auto md:w-2/3 md:pr-16 lg:w-1/2 lg:pl-0 lg:pr-24">
|
Mycelium Compute
|
||||||
<Eyebrow className="text-base/7 font-semibold text-cyan-500">COMPUTE</Eyebrow>
|
</Eyebrow>
|
||||||
<H3 className="mt-2 text-gray-900">Deterministic Compute You Control</H3>
|
<H3 className="mt-4">
|
||||||
<P className="mt-6 text-gray-600">
|
Deterministic Compute You Control
|
||||||
|
</H3>
|
||||||
|
<p className="mt-6 text-lg">
|
||||||
Run workloads on sovereign, self-verifying infrastructure.
|
Run workloads on sovereign, self-verifying infrastructure.
|
||||||
Mycelium Compute delivers predictable execution, zero drift, and automatic healing, whether you’re running containers, VMs, agents, or full Kubernetes clusters.
|
Mycelium Compute delivers predictable execution, zero drift, and automatic healing, whether you’re running containers, VMs, agents, or full Kubernetes clusters.
|
||||||
</P>
|
</p>
|
||||||
<div className="mt-12">
|
<p className="mt-4 lg:text-base italic text-gray-600 text-sm">
|
||||||
<Button href="#" variant="solid" color="cyan">
|
Works Alone. Works Together.
|
||||||
How it works
|
Mycelium Compute can run on any network fabric, or pair with Mycelium Network
|
||||||
|
for sovereign connectivity.
|
||||||
|
</p>
|
||||||
|
<div className="mt-10 flex items-center gap-x-6">
|
||||||
|
<Button
|
||||||
|
onClick={onGetStartedClick}
|
||||||
|
variant="solid"
|
||||||
|
color="cyan"
|
||||||
|
>
|
||||||
|
Get started
|
||||||
|
</Button>
|
||||||
|
<Button to="#" variant="outline">
|
||||||
|
Documentation <span aria-hidden="true">→</span>
|
||||||
</Button>
|
</Button>
|
||||||
<Button href="#" variant="outline" color="cyan">Explore Docs</Button>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
{/* ✅ Bottom horizontal line with spacing */}
|
||||||
|
<div className="w-full border-b border-gray-200" />
|
||||||
|
<div className="max-w-7xl bg-transparent mx-auto py-6 border border-t-0 border-b-0 border-gray-200"></div>
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ export function HomeHero() {
|
|||||||
Start Hosting
|
Start Hosting
|
||||||
</Button>
|
</Button>
|
||||||
|
|
||||||
<Button href="#" variant="outline" color="gray">
|
<Button href="#" variant="outline" color="white">
|
||||||
Deploy in Cloud <span aria-hidden="true">→</span>
|
Deploy in Cloud <span aria-hidden="true">→</span>
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||