diff --git a/app/[locale]/FeatureOne.tsx b/app/[locale]/FeatureOne.tsx
index 8fdb3543..41041648 100644
--- a/app/[locale]/FeatureOne.tsx
+++ b/app/[locale]/FeatureOne.tsx
@@ -1,5 +1,55 @@
+import { useTranslations } from "next-intl";
+
+import FeaturesList from "./components/FeaturesList";
+import Feature from "./components/Feature";
+
+import { MixIcon, RocketIcon, PaperPlaneIcon } from "@radix-ui/react-icons";
+
+const featureIconClassNames = "h-5 w-5 flex-none text-primary";
+
const FeatureOne = () => {
- return
FeatureOne
;
+ const t = useTranslations("home.features");
+
+ return (
+
+
+
+
+ {t("subText")}
+
+
+ {t("title")}
+
+
{t("description")}
+
+
+
+
+
+ {t("productionReady.name")}
+
+
+
+ {t("communitySupported.name")}
+
+
+
+ {t("easyMigration.name")}
+
+
+
+
+
+ );
};
export default FeatureOne;
diff --git a/app/[locale]/Header.tsx b/app/[locale]/Header.tsx
index 6e1536aa..d33fb7a5 100644
--- a/app/[locale]/Header.tsx
+++ b/app/[locale]/Header.tsx
@@ -70,14 +70,14 @@ export default function Header() {
darkModeSRText={tHeader("toggleTheme")}
openMainMenuSRText={tNav("openMainMenu")}
rockyLinuxSRText={tGlobal("name")}
- downloadSRText={tHeader("download")}
+ downloadSRText={tGlobal("download")}
translations={navigationTranslations}
/>
diff --git a/app/[locale]/Hero.tsx b/app/[locale]/Hero.tsx
index 6f2a88b7..441595d9 100644
--- a/app/[locale]/Hero.tsx
+++ b/app/[locale]/Hero.tsx
@@ -1,5 +1,50 @@
+import Image from "next/image";
+import { useTranslations } from "next-intl";
+
+import { Button } from "@/components/ui/button";
+
const Hero = () => {
- return Hero
;
+ const t = useTranslations("home.hero");
+ const tGlobal = useTranslations("global");
+
+ return (
+
+
+
+
+
+ {t("title")}
+
+
{t("description")}
+
+
+
+
+
+
+ );
};
export default Hero;
diff --git a/app/[locale]/components/Feature.tsx b/app/[locale]/components/Feature.tsx
new file mode 100644
index 00000000..8ac451b4
--- /dev/null
+++ b/app/[locale]/components/Feature.tsx
@@ -0,0 +1,21 @@
+import { ReactNode } from "react";
+
+export interface FeatureProps {
+ description: string;
+ children?: ReactNode;
+}
+
+const Feature = ({ description, children }: FeatureProps) => {
+ return (
+
+
+ {children}
+
+
+ {description}
+
+
+ );
+};
+
+export default Feature;
diff --git a/app/[locale]/components/FeaturesList.tsx b/app/[locale]/components/FeaturesList.tsx
new file mode 100644
index 00000000..8b2c6a87
--- /dev/null
+++ b/app/[locale]/components/FeaturesList.tsx
@@ -0,0 +1,11 @@
+import type { ReactNode } from "react";
+
+const FeaturesList = ({ children }: { children: ReactNode }) => {
+ return (
+
+ {children}
+
+ );
+};
+
+export default FeaturesList;
diff --git a/messages/en.json b/messages/en.json
index ae0f63ed..e6587237 100644
--- a/messages/en.json
+++ b/messages/en.json
@@ -1,10 +1,10 @@
{
"global": {
- "name": "Rocky Linux"
+ "name": "Rocky Linux",
+ "download": "Download"
},
"header": {
"toggleTheme": "Toggle Theme",
- "download": "Download",
"nav": {
"newsName": "News",
"aboutName": "About",
@@ -42,5 +42,29 @@
"donate": "Donate"
}
}
+ },
+ "home": {
+ "hero": {
+ "title": "Enterprise Linux, the community way.",
+ "description": "Rocky Linux is an open-source enterprise operating system designed to be 100% bug-for-bug compatible with Red Hat Enterprise Linux®. It is under intensive development by the community.",
+ "migrate": "Migrate"
+ },
+ "features": {
+ "title": "Rock solid, no matter the use-case.",
+ "subText": "STABLE, PRODUCTION READY LINUX",
+ "description": "Rocky Linux rebuilds sources directly from RHEL®, so you can bet your best dollar that you'll have a super stable experience, no matter the use-case.",
+ "productionReady": {
+ "name": "Production Ready",
+ "description": "Rocky Linux is enterprise-ready, providing solid stability with regular updates and a 10-year support lifecycle, all at no cost."
+ },
+ "communitySupported": {
+ "name": "Community Supported",
+ "description": "The community, sponsors, and partners have invested with long-term commitments to ensure the project stays with the community."
+ },
+ "easyMigration": {
+ "name": "Easy Migration",
+ "description": "Migrate from other Enterprise Linux distributions without sweating it. We provide an easy-to-use migration script, free of charge."
+ }
+ }
}
}
diff --git a/public/images/hero-image.png b/public/images/home-hero.png
similarity index 100%
rename from public/images/hero-image.png
rename to public/images/home-hero.png