diff --git a/src/app/components/Hero/Hero.tsx b/src/app/components/Hero/Hero.tsx
new file mode 100644
index 0000000..e2b16bf
--- /dev/null
+++ b/src/app/components/Hero/Hero.tsx
@@ -0,0 +1,27 @@
+import HeroContent from "./HeroContent";
+import HeroSVG from "./HeroSVG";
+import { HeroLeftTech, HeroRightTech } from "./HeroTechSVG";
+import React from "react";
+
+const Hero = () => {
+ return (
+
+ );
+};
+
+export default Hero;
diff --git a/src/app/components/Hero/HeroContent.tsx b/src/app/components/Hero/HeroContent.tsx
new file mode 100644
index 0000000..c0467d1
--- /dev/null
+++ b/src/app/components/Hero/HeroContent.tsx
@@ -0,0 +1,56 @@
+import { Badge } from "@/components/ui/badge";
+import { Button } from "@/components/ui/button";
+import { linksConfig } from "@/configs/links";
+import { CarrotIcon, TicketIcon } from "lucide-react";
+import Link from "next/link";
+
+const HeroContent = () => {
+ return (
+
+
+
+
+ فرانت چپتر پخت و پز میکند
+
+
+
+ همایش فرانت چپتر ۱۴۰۳{" "}
+
+
+
+ بزرگترین همایش فرانتاند ایران
+
+
+ همایش فرانت چپتر محلی برای گردهمایی و به اشتراکگذاری تجربیات
+
برنامهنویسان، متخصصین و علاقهمندان
+ حوزه فرانتاند
+
+
+
+
+
+
+
+
+
+
+
+
+ );
+};
+
+export default HeroContent;
diff --git a/src/app/components/Hero/HeroSVG.tsx b/src/app/components/Hero/HeroSVG.tsx
new file mode 100644
index 0000000..2b5c5f7
--- /dev/null
+++ b/src/app/components/Hero/HeroSVG.tsx
@@ -0,0 +1,271 @@
+import React from "react";
+
+const HeroSVG: React.FC = () => {
+ return (
+
+ );
+};
+
+export default HeroSVG;
diff --git a/src/app/components/Hero/HeroTechSVG.tsx b/src/app/components/Hero/HeroTechSVG.tsx
new file mode 100644
index 0000000..b660587
--- /dev/null
+++ b/src/app/components/Hero/HeroTechSVG.tsx
@@ -0,0 +1,1213 @@
+import React from "react";
+
+export const HeroLeftTech: React.FC = () => {
+ return (
+
+ );
+};
+
+export const HeroRightTech: React.FC = () => {
+ return (
+
+ );
+};
diff --git a/src/app/page.tsx b/src/app/page.tsx
index 13b4ea4..1abcc15 100644
--- a/src/app/page.tsx
+++ b/src/app/page.tsx
@@ -1,3 +1,4 @@
+import Hero from "./components/Hero/Hero";
import Sponsors from "./components/Sponsors/Sponsors";
import TopNavigation from "./components/top-navigation/top-navigation";
import FAQ from "@/app/components/FAQ/FAQ";
@@ -8,6 +9,7 @@ export default function Home() {
return (
<>
+
diff --git a/src/components/ui/badge.tsx b/src/components/ui/badge.tsx
new file mode 100644
index 0000000..528b31c
--- /dev/null
+++ b/src/components/ui/badge.tsx
@@ -0,0 +1,36 @@
+import * as React from "react";
+import { cva, type VariantProps } from "class-variance-authority";
+
+import { cn } from "@/lib/utils";
+
+const badgeVariants = cva(
+ "inline-flex items-center rounded-full border border-border/100 dark:border-border/20 px-2.5 py-1 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 gap-2",
+ {
+ variants: {
+ variant: {
+ default:
+ "border-transparent bg-primary text-foreground dark:shadow hover:bg-primary/80",
+ secondary:
+ "border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",
+ destructive:
+ "border-transparent bg-destructive text-destructive-foreground dark:shadow hover:bg-destructive/80",
+ outline: "text-foreground",
+ },
+ },
+ defaultVariants: {
+ variant: "default",
+ },
+ },
+);
+
+export interface BadgeProps
+ extends React.HTMLAttributes,
+ VariantProps {}
+
+function Badge({ className, variant, ...props }: BadgeProps) {
+ return (
+
+ );
+}
+
+export { Badge, badgeVariants };
diff --git a/src/configs/links.ts b/src/configs/links.ts
new file mode 100644
index 0000000..231656b
--- /dev/null
+++ b/src/configs/links.ts
@@ -0,0 +1,4 @@
+export const linksConfig = {
+ buyTicket: "https://frontchapter.ir/product/conf1403/",
+ support: "https://t.me/FrontChapterSupport",
+};