portfolio / src /components /Contact.jsx
kumar-aditya's picture
Upload 42 files
36fcfee verified
import React, { useRef } from 'react';
import { motion, useInView } from 'framer-motion';
import { BiLogoGmail } from 'react-icons/bi';
import { BsGithub } from 'react-icons/bs';
import { IoLogoLinkedin } from 'react-icons/io5';
import { IoMdMail } from "react-icons/io";
import { FaPhone } from "react-icons/fa6";
export default function Contact() {
const ref = useRef(null);
const isInView = useInView(ref, { once: true, amount: 0.2 });
return (
<motion.div
ref={ref}
initial={{ opacity: 0 }}
animate={isInView ? { opacity: 1 } : { opacity: 0 }}
transition={{ duration: 0.8 }}
className='lg:my-16 lg:px-28 my-8 px-5'
id='contact'
>
<motion.h2
initial={{ y: -50, opacity: 0 }}
animate={isInView ? { y: 0, opacity: 1 } : { opacity: 0 }}
transition={{ duration: 0.8 }}
className='text-2xl lg:text-4xl text-center'
>
Contact <span className='font-extrabold'>Me</span>
</motion.h2>
<div className='flex justify-between items-center mt-8 lg:mt-16 flex-col lg:flex-row'>
<motion.div
initial={{ x: -50, opacity: 0 }}
animate={isInView ? { x: 0, opacity: 1 } : { opacity: 0 }}
transition={{ duration: 0.8 }}
className='lg:w-[40%]'
>
<form className='w-full space-y-3 lg:space-y-5'>
<input className='border-2 px-5 py-3 border-black rounded placeholder:text-[#71717A] text-sm w-full' type="text" placeholder='Your name' required />
<input className='border-2 px-5 py-3 border-black rounded placeholder:text-[#71717A] text-sm w-full' type="email" placeholder='Email' required />
<input className='border-2 px-5 py-3 border-black rounded placeholder:text-[#71717A] text-sm w-full' type="text" placeholder='Your website (If exists)' />
<textarea className='resize-none border-2 px-5 py-3 h-32 border-black placeholder:text-[#71717A] rounded text-sm w-full' placeholder='How can I help?*'></textarea>
<motion.div
initial={{ opacity: 0, y: 20 }}
animate={isInView ? { opacity: 1, y: 0 } : { opacity: 0 }}
transition={{ duration: 0.8 }}
className='flex justify-between gap-3 lg:gap-5 flex-col lg:flex-row'
>
<motion.button
whileHover={{ scale: 1.05 }}
type='submit'
className='bg-black justify-center w-fit lg:w-auto lg:flex-1 hover:shadow-lg text-white px-3 py-2 rounded flex items-center gap-x-3 font-medium'
>
Get In Touch
</motion.button>
<div className='flex items-center gap-x-2 lg:gap-x-5'>
<motion.a
href="mailto:aditya.kumar25025@gmail.com"
className="bg-white p-2 lg:p-3 rounded border-2 border-black"
whileHover={{ scale: 1.1, backgroundColor: "#000", color: "#fff" }}
whileTap={{ scale: 0.9 }}
>
<BiLogoGmail className="w-4 h-4 lg:w-5 lg:h-5" />
</motion.a>
<motion.a
href="https://www.linkedin.com/in/25-aditya-kumar"
target="_blank"
rel="noopener noreferrer"
className="bg-white p-2 lg:p-3 rounded border-2 border-black"
whileHover={{ scale: 1.1, backgroundColor: "#000", color: "#fff" }}
whileTap={{ scale: 0.9 }}
>
<IoLogoLinkedin className="w-4 h-4 lg:w-5 lg:h-5" />
</motion.a>
</div>
</motion.div>
</form>
</motion.div>
<motion.div
initial={{ x: 50, opacity: 0 }}
animate={isInView ? { x: 0, opacity: 1 } : { opacity: 0 }}
transition={{ duration: 0.8 }}
className='lg:w-1/2'
>
<div className='font-extrabold text-2xl lg:text-5xl mt-5 lg:mt-0 space-y-1 lg:space-y-3'>
<h2>Let's <span className='text-white' style={{ WebkitTextStroke: '1px black' }}>talk</span> for</h2>
<h2>Something special</h2>
</div>
<p className='text-[#71717A] text-sm/6 lg:text-base mt-3 lg:mt-6'>I seek to push the limits of creativity to create high-engaging, user-friendly, and memorable interactive experiences.</p>
<div className='font-semibold text-sm lg:text-xl flex flex-col mt-6 gap-2 lg:gap-4'>
<motion.a
whileHover={{ x: 5 }}
className='flex items-center gap-2 group'
href="mailto:Youremail@gmail.com"
>
<span className='border-2 transition-all border-transparent group-hover:border-black rounded-full p-1'>
<IoMdMail className="w-4 h-4 lg:w-5 lg:h-5" />
</span>
aditya.kumar25025@gmail.com
</motion.a>
<motion.a
whileHover={{ x: 5 }}
className='flex items-center gap-2 group'
href="tele:1234567890"
>
<span className='border-2 transition-all border-transparent group-hover:border-black rounded-full p-[5px]'>
<FaPhone className="w-3 h-3 lg:w-4 lg:h-4" />
</span>
8320516883
</motion.a>
</div>
</motion.div>
</div>
</motion.div>
);
}