From 009ea871982a5f2795ee8d5059c8e473410bca7d Mon Sep 17 00:00:00 2001 From: kinou-p Date: Thu, 2 Oct 2025 15:47:32 +0200 Subject: [PATCH] fixed trad footer and background low ressources --- src/components/Footer.tsx | 14 +++- src/components/ParticlesBackground.tsx | 10 +-- src/components/sections/ContactSection.tsx | 87 ++++++++++++---------- src/utils/translations.ts | 18 +++++ 4 files changed, 81 insertions(+), 48 deletions(-) diff --git a/src/components/Footer.tsx b/src/components/Footer.tsx index 0dc683c..9605484 100644 --- a/src/components/Footer.tsx +++ b/src/components/Footer.tsx @@ -105,9 +105,12 @@ export const Footer = () => { element.scrollIntoView({ behavior: "smooth" }); } }} - className="justify-start h-auto p-2 text-muted-foreground hover:text-foreground" + className="justify-start h-auto p-2 text-muted-foreground hover:text-foreground hover:bg-transparent relative group" > - {t(`nav.${item}`)} + + {t(`nav.${item}`)} + + ))} @@ -129,10 +132,13 @@ export const Footer = () => { variant="ghost" size="sm" onClick={link.onClick} - className="justify-start h-auto p-2 text-muted-foreground hover:text-foreground" + className="justify-start h-auto p-2 text-muted-foreground hover:text-foreground hover:bg-transparent relative group" > {link.icon} - {link.label} + + {link.label} + + ))} diff --git a/src/components/ParticlesBackground.tsx b/src/components/ParticlesBackground.tsx index cdabc99..2b6b6ab 100644 --- a/src/components/ParticlesBackground.tsx +++ b/src/components/ParticlesBackground.tsx @@ -26,7 +26,7 @@ export const ParticlesBackground = () => { value: "transparent", }, }, - fpsLimit: 120, + fpsLimit: 60, interactivity: { events: { onClick: { @@ -40,10 +40,10 @@ export const ParticlesBackground = () => { }, modes: { push: { - quantity: 4, + quantity: 2, }, repulse: { - distance: 200, + distance: 150, duration: 0.4, }, }, @@ -66,14 +66,14 @@ export const ParticlesBackground = () => { default: "out" as const, }, random: false, - speed: 2, + speed: 1.5, straight: false, }, number: { density: { enable: true, }, - value: 80, + value: 70, }, opacity: { value: { min: 0.1, max: theme === "dark" ? 0.5 : 0.6 }, diff --git a/src/components/sections/ContactSection.tsx b/src/components/sections/ContactSection.tsx index e6c1cf6..dbb5084 100644 --- a/src/components/sections/ContactSection.tsx +++ b/src/components/sections/ContactSection.tsx @@ -1,6 +1,6 @@ import { motion } from "framer-motion"; import { useLanguage } from "@/contexts/LanguageContext"; -import { Mail, Github, Send, Share2, Briefcase } from "lucide-react"; +import { Mail, Github, Send, Share2, Briefcase, ArrowRight } from "lucide-react"; import { Card, CardContent } from "@/components/ui/card"; import { Button } from "@/components/ui/button"; import { Input } from "@/components/ui/input"; @@ -100,7 +100,7 @@ export const ContactSection = () => { transition={{ duration: 0.5 }} className="space-y-6" > -

Restons en contact

+

{t("contact.stayInTouch")}

{contacts.map((contact, index) => ( { initial={{ opacity: 0, y: 20 }} whileInView={{ opacity: 1, y: 0 }} viewport={{ once: true }} - transition={{ duration: 0.5, delay: index * 0.1 }} - whileHover={{ x: 5 }} + transition={{ duration: 0.2 }} + className="block" > - - -
- {contact.icon} -
-
-

- {contact.label} -

-

{contact.value}

-
-
-
+ + + +
+
+ {contact.icon} +
+
+

+ {contact.label} +

+

{contact.value}

+
+
+ +
+
+
))} @@ -135,23 +140,27 @@ export const ContactSection = () => { initial={{ opacity: 0, y: 20 }} whileInView={{ opacity: 1, y: 0 }} viewport={{ once: true }} - transition={{ duration: 0.5, delay: 0.3 }} + transition={{ duration: 0.2 }} + whileHover={{ x: 5 }} + onClick={handleShare} + className="cursor-pointer" > - + + +
+
+ +
+
+

+ {t("contact.share")} +

+

{t("contact.sharePortfolio")}

+
+
+ +
+
@@ -165,13 +174,13 @@ export const ContactSection = () => { > -

Envoyez-moi un message

+

{t("contact.sendMessage")}

{ {
{