diff --git a/src/components/Home/banner.jsx b/src/components/Home/banner.jsx index 37c33c5..63d4bd8 100644 --- a/src/components/Home/banner.jsx +++ b/src/components/Home/banner.jsx @@ -59,20 +59,20 @@ const Banner = () => {

Syncify Project Management

-

+

With ProjectSyncify, you can drive clarity and impact at scale by connecting work and workflows to company-wide goals.

{!user ? ( - ) : ( - )} @@ -86,20 +86,20 @@ const Banner = () => {

Syncify Project Management

-

+

With ProjectSyncify, you can drive clarity and impact at scale by connecting work and workflows to company-wide goals.

{!user ? ( ) : ( )} diff --git a/src/components/Pages/Home/Developer.jsx b/src/components/Pages/Home/Developer.jsx index 6c3d324..696e508 100644 --- a/src/components/Pages/Home/Developer.jsx +++ b/src/components/Pages/Home/Developer.jsx @@ -1,9 +1,113 @@ -import React from 'react'; +import { MdOutlineMail } from "react-icons/md"; +import Title from "../../../pages/shared/Title"; +import { IoLogoGithub } from "react-icons/io5"; +import { FaLinkedin } from "react-icons/fa"; +import { toast } from "react-toastify"; + const Developer = () => { + const teamMembers = [ + { + name: "Sabrina Rashid", + position: "Team Leader", + role: "Frontend Developer", + email: "sabrina.rashid.sara@gmail.com", + linkedin: "https://www.linkedin.com/in/sabrina--rashid", + github: "https://github.com/sabrinara", + imageSrc: "https://i.ibb.co/RvJtjZD/429823336-448305350855105-1214185624739971414-n.png", + }, + { + name: "Nazmul Islam", + position: "Co-Leader", + role: "Backend Developer", + email: "najmulislamru@gmail.com", + linkedin: "https://www.linkedin.com/in/najmulislamnajimofficial", + github: "https://github.com/najmulislamnajim", + imageSrc: "https://avatars.githubusercontent.com/u/78375634?v=4", + }, + { + name: "Rasel Chowdhury", + position: "Member", + role: "Frontend Developer", + email: "chowdhuryrasel040@gmail.com", + linkedin: "https://www.linkedin.com/in/rasel-chowdhury-4a27a220a/", + github: "https://github.com/rasel-chowdhury1", + imageSrc: "https://avatars.githubusercontent.com/u/87080744?v=4", + }, + { + name: "Md Akther Hosen", + position: "Member", + role: "Frontend Developer", + email: "dev.aktherhosen@gmail.com", + linkedin: "https://www.linkedin.com/in/md-akther-hosen/", + github: "https://github.com/AktherHosen", + imageSrc: "https://avatars.githubusercontent.com/u/79582560?v=4", + }, + { + name: "Sifath Islam", + position: "Member", + role: "Backend Developer", + email: "sifathislam790@gmail.com", + linkedin: "https://www.linkedin.com/in/mohaimenulislam1/", + github: "https://github.com/Sifathislam", + imageSrc: "https://avatars.githubusercontent.com/u/105329974?v=4", + }, + + + ]; + + const copyToClipboard = (text, label) => { + navigator.clipboard.writeText(text).then(() => { + toast.success(`${label} copied to clipboard!`); + // alert(`${label} copied to clipboard!`); + }).catch(err => { + console.error(`Failed to copy ${label}: `, err); + }); + }; return (
- developer +
+ + + <div className="grid grid-cols-1 md:grid-cols-3 xl:grid-cols-5 p-5 gap-3 justify-center mx-auto rounded-md"> + + {teamMembers.map((member, index) => ( + <div key={index} className="text-center space-y-1"> + <img + className="mx-auto rounded-full object-cover h-32 w-32" + src={member.imageSrc} + alt={`${member.name}'s image`} + width={300} + height={300} + /> + <h2 className="text-xl font-semibold mt-2">{member.name}</h2> + <h2 className="text-md font-semibold">{member.position} <span className="text-xs">({member.role})</span></h2> + {/* <h2 className="text-sm font-semibold">({member.role})</h2> */} + <div className="flex justify-center items-center mt-1"> + <div onClick={() => copyToClipboard(member.email, 'Email address')} style={{ cursor: 'pointer', display: 'flex', alignItems: 'center', marginBottom: '5px' }}> + <MdOutlineMail style={{ marginRight: '5px' }} /> + {/* {member.email} */} + </div> + <div onClick={() => copyToClipboard(member.github, 'GitHub username')} style={{ cursor: 'pointer', display: 'flex', alignItems: 'center', marginBottom: '5px' }}> + <IoLogoGithub style={{ marginRight: '5px' }} /> + {/* {member.github} */} + </div> + <div onClick={() => copyToClipboard(member.linkedin, 'LinkedIn profile URL')} style={{ cursor: 'pointer', display: 'flex', alignItems: 'center', marginBottom: '5px' }}> + <FaLinkedin style={{ marginRight: '5px' }} /> + {/* {member.linkedin} */} + </div> + </div> + + </div> + ))} + + + <div> + + </div> + </div> + + </div> </div> ); }; diff --git a/src/components/User/DynamicProfile.jsx b/src/components/User/DynamicProfile.jsx index 878d80e..49a2fa7 100644 --- a/src/components/User/DynamicProfile.jsx +++ b/src/components/User/DynamicProfile.jsx @@ -264,10 +264,7 @@ const DynamicProfile = () => { document.getElementById("UserEdit").close(); }; - const handleAddUserEdit = () => { - handleCloseModal(); - setEdit(true); - }; + useEffect(() => { const getProfileData = async() => { @@ -318,35 +315,6 @@ const DynamicProfile = () => { </div> </div> - {/* <div> - <div className="flex gap-2 md:gap-5 mt-8 md:mt-16 ml-10 md:ml-40"> - <ScrollLink to="info" smooth={true} duration={1000}> - <button className="flex justify-between items-center gap-3 px-2 py-1 text-sm bg-sky-200 dark:bg-sky-900 dark:text-sky-50 font-bold rounded"> - Info - </button> - </ScrollLink> - <ScrollLink to="education" smooth={true} duration={1000}> - <button className="flex justify-between items-center gap-3 px-2 py-1 text-sm bg-sky-200 dark:bg-sky-900 dark:text-sky-50 font-bold rounded"> - Education - </button> - </ScrollLink> - <ScrollLink to="work" smooth={true} duration={1000}> - <button className="flex justify-between items-center gap-3 px-2 py-1 text-sm bg-sky-200 dark:bg-sky-900 dark:text-sky-50 font-bold rounded"> - Work - </button> - </ScrollLink> - <ScrollLink to="contact" smooth={true} duration={1000}> - <button className="flex justify-between items-center gap-3 px-2 py-1 text-sm bg-sky-200 dark:bg-sky-900 dark:text-sky-50 font-bold rounded"> - Contact - </button> - </ScrollLink> - <ScrollLink to="projects" smooth={true} duration={1000}> - <button className="flex justify-between items-center gap-3 px-2 py-1 text-sm bg-sky-200 dark:bg-sky-900 dark:text-sky-50 font-bold rounded"> - Projects - </button> - </ScrollLink> - </div> - </div> */} <div className="flex flex-wrap gap-2 sm:items-center mt-10 md:mt-6 ml-10 md:ml-36 font-semibold "> <button @@ -357,24 +325,7 @@ const DynamicProfile = () => { > Info </button> - {/* <button - onClick={() => setShowComponent("Work")} - className={`rounded py-1 px-2 text-sm hover:bg-sky-200 dark:hover:bg-sky-300 hover:text-sky-900 ${showComponent === "Work" - ? "bg-sky-50 dark:bg-sky-950 " - : "" - }`} - > - Work - </button> */} - {/* <button - onClick={() => setShowComponent("Education")} - className={`rounded py-1 px-2 text-sm hover:bg-sky-200 dark:hover:bg-sky-300 hover:text-sky-900 ${showComponent === "Education" - ? "bg-sky-50 dark:bg-sky-950" - : "" - }`} - > - Education - </button> */} + <button onClick={() => setShowComponent("Contact")} className={`rounded py-1 px-2 text-sm hover:bg-sky-200 dark:hover:bg-sky-300 hover:text-sky-900 ${ diff --git a/src/layouts/Root.jsx b/src/layouts/Root.jsx index efa85e2..4fb0a45 100644 --- a/src/layouts/Root.jsx +++ b/src/layouts/Root.jsx @@ -24,7 +24,7 @@ const Root = () => { }; return ( <AuthProviders> - <div className="bg-white dark:bg-gray-950 text-[#2e2b54] dark:text-[#73e9fe] min-h-screen"> + <div className="bg-white dark:bg-gray-950 text-[#0c01a1] dark:text-[#73e9fe] min-h-screen"> {noHeaderFooter || <Navbar handleThemeChange={handleThemeChange} />} <Outlet /> {noHeaderFooter || <Footer />}