feat: update homepage UI with new cloud section and simplified gradient backgrounds
This commit is contained in:
		
							
								
								
									
										66
									
								
								src/pages/home/HomeCloud.tsx
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										66
									
								
								src/pages/home/HomeCloud.tsx
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,66 @@
 | 
			
		||||
import { CheckCircleIcon } from '@heroicons/react/20/solid'
 | 
			
		||||
import { H2, P } from '@/components/Texts'
 | 
			
		||||
 | 
			
		||||
const benefits = [
 | 
			
		||||
  'Decentralized Infrastructure',
 | 
			
		||||
  'End-to-End Encryption',
 | 
			
		||||
  'Sovereign Data Control',
 | 
			
		||||
  'Scalable Kubernetes Clusters',
 | 
			
		||||
  'Censorship-Resistant',
 | 
			
		||||
  'Peer-to-Peer Networking',
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
export function HomeCloud() {
 | 
			
		||||
  return (
 | 
			
		||||
    <div className="overflow-hidden bg-white py-24">
 | 
			
		||||
      <div className="relative isolate">
 | 
			
		||||
        <div className="mx-auto max-w-7xl sm:px-6 lg:px-8">
 | 
			
		||||
          <div className="mx-auto flex max-w-2xl flex-col gap-16 bg-white px-6 py-16 shadow-lg ring-1 ring-gray-200/5 sm:rounded-3xl sm:p-8 lg:mx-0 lg:max-w-none lg:flex-row lg:items-center lg:py-20 xl:gap-x-20 xl:px-20">
 | 
			
		||||
            <img
 | 
			
		||||
              alt=""
 | 
			
		||||
              src="/images/kubernetes.png"
 | 
			
		||||
              className="h-96 w-full flex-none rounded-2xl object-cover lg:aspect-square lg:h-auto lg:max-w-sm"
 | 
			
		||||
            />
 | 
			
		||||
            <div className="w-full flex-auto">
 | 
			
		||||
              <H2 className="">
 | 
			
		||||
                Mycelium <span className="font-neuton font-medium text-7xl italic">Cloud</span>
 | 
			
		||||
              </H2>
 | 
			
		||||
              <P className="mt-6 text-lg/8 text-pretty text-gray-600">
 | 
			
		||||
                A comprehensive platform for deploying and managing Kubernetes clusters on the decentralized Mycelium Grid infrastructure
 | 
			
		||||
              </P>
 | 
			
		||||
              <ul
 | 
			
		||||
                role="list"
 | 
			
		||||
                className="mt-10 grid grid-cols-1 gap-x-8 gap-y-3 text-base/7 text-gray-950 sm:grid-cols-2"
 | 
			
		||||
              >
 | 
			
		||||
                {benefits.map((benefit) => (
 | 
			
		||||
                  <li key={benefit} className="flex gap-x-3">
 | 
			
		||||
                    <CheckCircleIcon aria-hidden="true" className="h-7 w-5 flex-none text-cyan-500" />
 | 
			
		||||
                    {benefit}
 | 
			
		||||
                  </li>
 | 
			
		||||
                ))}
 | 
			
		||||
              </ul>
 | 
			
		||||
              <div className="mt-10 flex">
 | 
			
		||||
                <a href="#" className="text-sm/6 font-semibold text-cyan-600 hover:text-cyan-500">
 | 
			
		||||
                  Learn more 
 | 
			
		||||
                  <span aria-hidden="true"> →</span>
 | 
			
		||||
                </a>
 | 
			
		||||
              </div>
 | 
			
		||||
            </div>
 | 
			
		||||
          </div>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div
 | 
			
		||||
          aria-hidden="true"
 | 
			
		||||
          className="absolute inset-x-0 -top-16 -z-10 flex transform-gpu justify-center overflow-hidden blur-3xl"
 | 
			
		||||
        >
 | 
			
		||||
          <div
 | 
			
		||||
            style={{
 | 
			
		||||
              clipPath:
 | 
			
		||||
                'polygon(73.6% 51.7%, 91.7% 11.8%, 100% 46.4%, 97.4% 82.2%, 92.5% 84.9%, 75.7% 64%, 55.3% 47.5%, 46.5% 49.4%, 45% 62.9%, 50.3% 87.2%, 21.3% 64.1%, 0.1% 100%, 5.4% 51.1%, 21.4% 63.9%, 58.9% 0.2%, 73.6% 51.7%)',
 | 
			
		||||
            }}
 | 
			
		||||
            className="aspect-1318/752 w-329.5 flex-none bg-linear-to-r from-[#9fe8fc] to-[#c6c4fa] opacity-50"
 | 
			
		||||
          />
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
  )
 | 
			
		||||
}
 | 
			
		||||
@@ -35,20 +35,17 @@ export function HomeFeatures() {
 | 
			
		||||
        <div className="relative bg-transparent py-24 overflow-hidden">
 | 
			
		||||
      {/* --- Soft background gradients --- */}
 | 
			
		||||
      <div
 | 
			
		||||
        className="absolute -top-32 right-0 w-[600px] h-[600px] rounded-full blur-3xl opacity-50 -z-10"
 | 
			
		||||
        style={{
 | 
			
		||||
          background:
 | 
			
		||||
            'radial-gradient(circle at center, rgba(147,197,253,0.6) 0%, rgba(165,180,252,0.4) 40%, rgba(221,214,254,0.2) 80%)',
 | 
			
		||||
        }}
 | 
			
		||||
      ></div>
 | 
			
		||||
 | 
			
		||||
      <div
 | 
			
		||||
        className="absolute -bottom-40 -left-40 w-[600px] h-[600px] rounded-full blur-3xl opacity-50 -z-10"
 | 
			
		||||
        style={{
 | 
			
		||||
          background:
 | 
			
		||||
            'radial-gradient(circle at center, rgba(115,207,255,0.5) 0%, rgba(59,130,246,0.4) 40%, rgba(221,214,254,0.2) 90%)',
 | 
			
		||||
        }}
 | 
			
		||||
      ></div>
 | 
			
		||||
          aria-hidden="true"
 | 
			
		||||
          className="absolute inset-x-0 -top-16 -z-10 flex transform-gpu justify-center overflow-hidden blur-3xl"
 | 
			
		||||
        >
 | 
			
		||||
          <div
 | 
			
		||||
            style={{
 | 
			
		||||
              clipPath:
 | 
			
		||||
                'polygon(73.6% 51.7%, 91.7% 11.8%, 100% 46.4%, 97.4% 82.2%, 92.5% 84.9%, 75.7% 64%, 55.3% 47.5%, 46.5% 49.4%, 45% 62.9%, 50.3% 87.2%, 21.3% 64.1%, 0.1% 100%, 5.4% 51.1%, 21.4% 63.9%, 58.9% 0.2%, 73.6% 51.7%)',
 | 
			
		||||
            }}
 | 
			
		||||
            className="aspect-1318/752 w-329.5 flex-none bg-linear-to-r from-[#9fd6fc] to-[#c6c4fa] opacity-40"
 | 
			
		||||
          />
 | 
			
		||||
        </div>
 | 
			
		||||
      <div className="mx-auto max-w-7xl px-6 lg:px-8">
 | 
			
		||||
        <div className="mx-auto max-w-2xl lg:mx-0">
 | 
			
		||||
          <H2 className="">
 | 
			
		||||
@@ -67,7 +64,7 @@ export function HomeFeatures() {
 | 
			
		||||
                </div>
 | 
			
		||||
                <h3 className="mt-6 text-xl font-semibold text-black">{feature.name}</h3>
 | 
			
		||||
                <p className="mt-4 text-base text-gray-800">{feature.description}</p>
 | 
			
		||||
                <a href={feature.href} className="mt-6 text-base font-semibold text-black">Learn more ></a>
 | 
			
		||||
                <a href={feature.href} className="mt-6 text-base font-semibold text-black">Learn more <span aria-hidden="true"> →</span></a>
 | 
			
		||||
                <div className="absolute -bottom-10 -right-10 h-50 w-50 -z-10" style={{ background: 'radial-gradient(circle, rgba(173, 239, 255, 0.6) 0%, rgba(115, 207, 255, 0.4) 100%)', filter: 'blur(80px)' }}></div>
 | 
			
		||||
              </div>
 | 
			
		||||
            ))}
 | 
			
		||||
 
 | 
			
		||||
@@ -7,6 +7,8 @@ import { HomeHeroDark } from './HomeHeroDark'
 | 
			
		||||
import { HomeAurora } from './HomeAurora'
 | 
			
		||||
import { HomeMapSection } from './HomeMap'
 | 
			
		||||
import { HomeFeatures } from './HomeFeatures'
 | 
			
		||||
import { HalfGlobe } from '@/components/ui/HalfGlobe'
 | 
			
		||||
import { HomeCloud } from './HomeCloud'
 | 
			
		||||
 | 
			
		||||
export default function HomePage() {
 | 
			
		||||
  return (
 | 
			
		||||
@@ -24,8 +26,9 @@ export default function HomePage() {
 | 
			
		||||
      </AnimatedSection>
 | 
			
		||||
 | 
			
		||||
      <AnimatedSection>
 | 
			
		||||
        <StackSection />
 | 
			
		||||
       <HomeCloud />
 | 
			
		||||
      </AnimatedSection>
 | 
			
		||||
 | 
			
		||||
    </div>
 | 
			
		||||
  )
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user