mirror of
https://github.com/supabase/supabase.git
synced 2026-10-05 09:25:06 +03:00
Compute landing page. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Added a Compute product page introducing ephemeral sandboxes and always-on HTTP services, with information on workloads, security, deployment, and common questions. * Added a private-alpha waitlist form with submission confirmation and error feedback. * Added Compute links and a “Private Alpha” badge in product navigation and the footer. * Added an animated diagram illustrating Compute workloads and their lifecycle. * **Documentation** * Added a Compute overview covering runtimes, scaling, security, deployment, and availability. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
30 lines
1.0 KiB
TypeScript
30 lines
1.0 KiB
TypeScript
import type { LucideIcon } from 'lucide-react'
|
|
import type { FC } from 'react'
|
|
|
|
export type Feature = {
|
|
icon: LucideIcon
|
|
heading: string
|
|
subheading: string
|
|
}
|
|
|
|
/**
|
|
* Icon, hairline rule, heading, subheading — the feature-list item shared by the
|
|
* Enterprise support section and the Compute highlights. The rule's leading
|
|
* segment is deliberately the same width as the icon, so keep the two `w-7`
|
|
* classes in sync if the icon size changes.
|
|
*/
|
|
export const FeatureItem: FC<{ feature: Feature }> = ({ feature }) => {
|
|
const Icon = feature.icon
|
|
|
|
return (
|
|
<li className="flex flex-col gap-2 text-sm">
|
|
<Icon className="stroke-1 mb-2 w-7 h-7 text-foreground-lighter" />
|
|
<div className="w-full h-px overflow-hidden flex items-start bg-border-muted">
|
|
<span className="h-full w-7 bg-foreground-lighter" />
|
|
</div>
|
|
<h4 className="text-foreground text-lg lg:text-xl mt-1">{feature.heading}</h4>
|
|
<p className="text-foreground-lighter text-sm">{feature.subheading}</p>
|
|
</li>
|
|
)
|
|
}
|