Spaces:
Running
Running
<html lang="en"> | |
<head> | |
<meta charset="UTF-8"> | |
<meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
<title>Interactive Portfolio</title> | |
<script src="https://cdn.tailwindcss.com"></script> | |
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> | |
<style> | |
/* Custom CSS for animations and effects */ | |
.card-hover-effect { | |
transition: all 0.3s ease; | |
} | |
.card-hover-effect:hover { | |
transform: translateY(-5px); | |
box-shadow: 0 10px 20px rgba(0,0,0,0.1); | |
} | |
.skill-bar { | |
height: 8px; | |
border-radius: 4px; | |
transition: width 1.5s ease; | |
} | |
.project-card { | |
perspective: 1000px; | |
} | |
.project-inner { | |
transition: transform 0.6s; | |
transform-style: preserve-3d; | |
} | |
.project-card:hover .project-inner { | |
transform: rotateY(180deg); | |
} | |
.project-front, .project-back { | |
backface-visibility: hidden; | |
position: absolute; | |
width: 100%; | |
height: 100%; | |
} | |
.project-back { | |
transform: rotateY(180deg); | |
} | |
@keyframes float { | |
0% { transform: translateY(0px); } | |
50% { transform: translateY(-10px); } | |
100% { transform: translateY(0px); } | |
} | |
.floating { | |
animation: float 3s ease-in-out infinite; | |
} | |
.dark-mode { | |
background-color: #1a202c; | |
color: #f7fafc; | |
} | |
.dark-mode .bg-white { | |
background-color: #2d3748; | |
color: #f7fafc; | |
} | |
.dark-mode .text-gray-800 { | |
color: #f7fafc; | |
} | |
.dark-mode .border-gray-200 { | |
border-color: #4a5568; | |
} | |
</style> | |
</head> | |
<body class="bg-gray-50 font-sans transition-colors duration-300"> | |
<!-- Dark Mode Toggle --> | |
<div class="fixed top-4 right-4 z-50"> | |
<button id="darkModeToggle" class="p-2 rounded-full bg-gray-200 dark:bg-gray-700 text-gray-800 dark:text-white shadow-lg"> | |
<i class="fas fa-moon dark:hidden"></i> | |
<i class="fas fa-sun hidden dark:block"></i> | |
</button> | |
</div> | |
<!-- Navigation --> | |
<nav class="fixed w-full bg-white dark:bg-gray-800 shadow-md z-40"> | |
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"> | |
<div class="flex justify-between h-16"> | |
<div class="flex items-center"> | |
<span class="text-xl font-bold text-indigo-600 dark:text-indigo-400">Portfolio</span> | |
</div> | |
<div class="hidden md:flex items-center space-x-8"> | |
<a href="#home" class="text-gray-800 dark:text-white hover:text-indigo-600 dark:hover:text-indigo-400 transition">Home</a> | |
<a href="#about" class="text-gray-800 dark:text-white hover:text-indigo-600 dark:hover:text-indigo-400 transition">About</a> | |
<a href="#skills" class="text-gray-800 dark:text-white hover:text-indigo-600 dark:hover:text-indigo-400 transition">Skills</a> | |
<a href="#projects" class="text-gray-800 dark:text-white hover:text-indigo-600 dark:hover:text-indigo-400 transition">Projects</a> | |
<a href="#contact" class="text-gray-800 dark:text-white hover:text-indigo-600 dark:hover:text-indigo-400 transition">Contact</a> | |
</div> | |
<div class="md:hidden flex items-center"> | |
<button id="mobileMenuButton" class="text-gray-800 dark:text-white"> | |
<i class="fas fa-bars text-2xl"></i> | |
</button> | |
</div> | |
</div> | |
</div> | |
<!-- Mobile Menu --> | |
<div id="mobileMenu" class="hidden md:hidden bg-white dark:bg-gray-800 shadow-lg"> | |
<div class="px-2 pt-2 pb-3 space-y-1 sm:px-3"> | |
<a href="#home" class="block px-3 py-2 text-gray-800 dark:text-white hover:text-indigo-600 dark:hover:text-indigo-400 transition">Home</a> | |
<a href="#about" class="block px-3 py-2 text-gray-800 dark:text-white hover:text-indigo-600 dark:hover:text-indigo-400 transition">About</a> | |
<a href="#skills" class="block px-3 py-2 text-gray-800 dark:text-white hover:text-indigo-600 dark:hover:text-indigo-400 transition">Skills</a> | |
<a href="#projects" class="block px-3 py-2 text-gray-800 dark:text-white hover:text-indigo-600 dark:hover:text-indigo-400 transition">Projects</a> | |
<a href="#contact" class="block px-3 py-2 text-gray-800 dark:text-white hover:text-indigo-600 dark:hover:text-indigo-400 transition">Contact</a> | |
</div> | |
</div> | |
</nav> | |
<!-- Hero Section --> | |
<section id="home" class="min-h-screen flex items-center justify-center bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 pt-16"> | |
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-20"> | |
<div class="flex flex-col md:flex-row items-center"> | |
<div class="md:w-1/2 mb-10 md:mb-0"> | |
<h1 class="text-4xl md:text-6xl font-bold text-white mb-4">Hi, I'm <span class="text-yellow-300">Alex</span></h1> | |
<h2 class="text-2xl md:text-3xl font-semibold text-white mb-6">Full Stack Developer</h2> | |
<p class="text-lg text-white mb-8 max-w-lg">I create beautiful, functional websites and applications with a focus on user experience and clean code.</p> | |
<div class="flex space-x-4"> | |
<a href="#contact" class="bg-white text-indigo-600 px-6 py-3 rounded-lg font-medium hover:bg-gray-100 transition shadow-lg">Hire Me</a> | |
<a href="#projects" class="border-2 border-white text-white px-6 py-3 rounded-lg font-medium hover:bg-white hover:text-indigo-600 transition shadow-lg">View Work</a> | |
</div> | |
</div> | |
<div class="md:w-1/2 flex justify-center"> | |
<div class="relative"> | |
<img src="https://images.unsplash.com/photo-1571171637578-41bc2dd41cd2?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=880&q=80" | |
alt="Developer" | |
class="rounded-full w-64 h-64 md:w-80 md:h-80 object-cover border-4 border-white shadow-2xl floating"> | |
<div class="absolute -bottom-5 -right-5 bg-white dark:bg-gray-800 p-4 rounded-full shadow-xl"> | |
<i class="fas fa-code text-3xl text-indigo-600"></i> | |
</div> | |
</div> | |
</div> | |
</div> | |
</div> | |
</section> | |
<!-- About Section --> | |
<section id="about" class="py-20 bg-white dark:bg-gray-800"> | |
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"> | |
<h2 class="text-3xl font-bold text-center text-gray-800 dark:text-white mb-16">About Me</h2> | |
<div class="flex flex-col md:flex-row items-center"> | |
<div class="md:w-1/3 mb-10 md:mb-0 flex justify-center"> | |
<div class="relative"> | |
<img src="https://images.unsplash.com/photo-1519085360753-af0119f7cbe7?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=687&q=80" | |
alt="About Me" | |
class="rounded-lg w-64 h-80 md:w-72 md:h-96 object-cover shadow-xl"> | |
<div class="absolute -bottom-5 -left-5 bg-indigo-600 p-4 rounded-lg shadow-xl"> | |
<p class="text-white font-bold">5+ Years Experience</p> | |
</div> | |
</div> | |
</div> | |
<div class="md:w-2/3 md:pl-12"> | |
<h3 class="text-2xl font-semibold text-gray-800 dark:text-white mb-4">Who am I?</h3> | |
<p class="text-gray-600 dark:text-gray-300 mb-6"> | |
I'm a passionate Full Stack Developer with over 5 years of experience creating digital solutions. | |
I specialize in JavaScript frameworks and have worked with startups and established companies | |
to build web applications that solve real-world problems. | |
</p> | |
<div class="grid grid-cols-1 md:grid-cols-2 gap-6 mb-8"> | |
<div class="bg-gray-100 dark:bg-gray-700 p-4 rounded-lg"> | |
<div class="flex items-center mb-2"> | |
<div class="bg-indigo-100 dark:bg-indigo-900 p-2 rounded-full mr-3"> | |
<i class="fas fa-graduation-cap text-indigo-600 dark:text-indigo-400"></i> | |
</div> | |
<h4 class="font-semibold text-gray-800 dark:text-white">Education</h4> | |
</div> | |
<p class="text-gray-600 dark:text-gray-300 text-sm"> | |
Master's in Computer Science<br> | |
Stanford University, 2018 | |
</p> | |
</div> | |
<div class="bg-gray-100 dark:bg-gray-700 p-4 rounded-lg"> | |
<div class="flex items-center mb-2"> | |
<div class="bg-indigo-100 dark:bg-indigo-900 p-2 rounded-full mr-3"> | |
<i class="fas fa-briefcase text-indigo-600 dark:text-indigo-400"></i> | |
</div> | |
<h4 class="font-semibold text-gray-800 dark:text-white">Experience</h4> | |
</div> | |
<p class="text-gray-600 dark:text-gray-300 text-sm"> | |
Senior Developer at TechSolutions<br> | |
2020 - Present | |
</p> | |
</div> | |
</div> | |
<p class="text-gray-600 dark:text-gray-300 mb-6"> | |
When I'm not coding, you can find me hiking in the mountains, reading sci-fi novels, | |
or experimenting with new cooking recipes. I believe in continuous learning and | |
staying updated with the latest technologies. | |
</p> | |
<a href="#" class="inline-flex items-center text-indigo-600 dark:text-indigo-400 font-medium"> | |
Download CV <i class="fas fa-download ml-2"></i> | |
</a> | |
</div> | |
</div> | |
</div> | |
</section> | |
<!-- Skills Section --> | |
<section id="skills" class="py-20 bg-gray-100 dark:bg-gray-900"> | |
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"> | |
<h2 class="text-3xl font-bold text-center text-gray-800 dark:text-white mb-4">My Skills</h2> | |
<p class="text-center text-gray-600 dark:text-gray-300 max-w-2xl mx-auto mb-12"> | |
I've worked with a variety of technologies in the web development world. Here are my core competencies. | |
</p> | |
<div class="grid grid-cols-1 md:grid-cols-2 gap-8"> | |
<!-- Frontend Skills --> | |
<div class="bg-white dark:bg-gray-800 p-6 rounded-xl shadow-md card-hover-effect"> | |
<div class="flex items-center mb-6"> | |
<div class="bg-indigo-100 dark:bg-indigo-900 p-3 rounded-full mr-4"> | |
<i class="fas fa-laptop-code text-indigo-600 dark:text-indigo-400 text-xl"></i> | |
</div> | |
<h3 class="text-xl font-semibold text-gray-800 dark:text-white">Frontend Development</h3> | |
</div> | |
<div class="space-y-4"> | |
<div> | |
<div class="flex justify-between mb-1"> | |
<span class="text-gray-700 dark:text-gray-300">HTML/CSS</span> | |
<span class="text-gray-500">95%</span> | |
</div> | |
<div class="w-full bg-gray-200 dark:bg-gray-700 rounded-full h-2"> | |
<div class="skill-bar bg-indigo-600 h-2 rounded-full" style="width: 95%"></div> | |
</div> | |
</div> | |
<div> | |
<div class="flex justify-between mb-1"> | |
<span class="text-gray-700 dark:text-gray-300">JavaScript</span> | |
<span class="text-gray-500">90%</span> | |
</div> | |
<div class="w-full bg-gray-200 dark:bg-gray-700 rounded-full h-2"> | |
<div class="skill-bar bg-indigo-600 h-2 rounded-full" style="width: 90%"></div> | |
</div> | |
</div> | |
<div> | |
<div class="flex justify-between mb-1"> | |
<span class="text-gray-700 dark:text-gray-300">React</span> | |
<span class="text-gray-500">85%</span> | |
</div> | |
<div class="w-full bg-gray-200 dark:bg-gray-700 rounded-full h-2"> | |
<div class="skill-bar bg-indigo-600 h-2 rounded-full" style="width: 85%"></div> | |
</div> | |
</div> | |
<div> | |
<div class="flex justify-between mb-1"> | |
<span class="text-gray-700 dark:text-gray-300">Vue.js</span> | |
<span class="text-gray-500">80%</span> | |
</div> | |
<div class="w-full bg-gray-200 dark:bg-gray-700 rounded-full h-2"> | |
<div class="skill-bar bg-indigo-600 h-2 rounded-full" style="width: 80%"></div> | |
</div> | |
</div> | |
</div> | |
</div> | |
<!-- Backend Skills --> | |
<div class="bg-white dark:bg-gray-800 p-6 rounded-xl shadow-md card-hover-effect"> | |
<div class="flex items-center mb-6"> | |
<div class="bg-indigo-100 dark:bg-indigo-900 p-3 rounded-full mr-4"> | |
<i class="fas fa-server text-indigo-600 dark:text-indigo-400 text-xl"></i> | |
</div> | |
<h3 class="text-xl font-semibold text-gray-800 dark:text-white">Backend Development</h3> | |
</div> | |
<div class="space-y-4"> | |
<div> | |
<div class="flex justify-between mb-1"> | |
<span class="text-gray-700 dark:text-gray-300">Node.js</span> | |
<span class="text-gray-500">90%</span> | |
</div> | |
<div class="w-full bg-gray-200 dark:bg-gray-700 rounded-full h-2"> | |
<div class="skill-bar bg-indigo-600 h-2 rounded-full" style="width: 90%"></div> | |
</div> | |
</div> | |
<div> | |
<div class="flex justify-between mb-1"> | |
<span class="text-gray-700 dark:text-gray-300">Python</span> | |
<span class="text-gray-500">85%</span> | |
</div> | |
<div class="w-full bg-gray-200 dark:bg-gray-700 rounded-full h-2"> | |
<div class="skill-bar bg-indigo-600 h-2 rounded-full" style="width: 85%"></div> | |
</div> | |
</div> | |
<div> | |
<div class="flex justify-between mb-1"> | |
<span class="text-gray-700 dark:text-gray-300">MongoDB</span> | |
<span class="text-gray-500">80%</span> | |
</div> | |
<div class="w-full bg-gray-200 dark:bg-gray-700 rounded-full h-2"> | |
<div class="skill-bar bg-indigo-600 h-2 rounded-full" style="width: 80%"></div> | |
</div> | |
</div> | |
<div> | |
<div class="flex justify-between mb-1"> | |
<span class="text-gray-700 dark:text-gray-300">SQL</span> | |
<span class="text-gray-500">75%</span> | |
</div> | |
<div class="w-full bg-gray-200 dark:bg-gray-700 rounded-full h-2"> | |
<div class="skill-bar bg-indigo-600 h-2 rounded-full" style="width: 75%"></div> | |
</div> | |
</div> | |
</div> | |
</div> | |
</div> | |
<!-- Additional Skills --> | |
<div class="mt-12"> | |
<h3 class="text-xl font-semibold text-center text-gray-800 dark:text-white mb-8">Other Skills</h3> | |
<div class="flex flex-wrap justify-center gap-4"> | |
<div class="bg-white dark:bg-gray-800 px-4 py-2 rounded-full shadow-md flex items-center card-hover-effect"> | |
<i class="fab fa-git-alt text-gray-700 dark:text-gray-300 mr-2"></i> | |
<span class="text-gray-700 dark:text-gray-300">Git</span> | |
</div> | |
<div class="bg-white dark:bg-gray-800 px-4 py-2 rounded-full shadow-md flex items-center card-hover-effect"> | |
<i class="fas fa-mobile-alt text-gray-700 dark:text-gray-300 mr-2"></i> | |
<span class="text-gray-700 dark:text-gray-300">Responsive Design</span> | |
</div> | |
<div class="bg-white dark:bg-gray-800 px-4 py-2 rounded-full shadow-md flex items-center card-hover-effect"> | |
<i class="fas fa-paint-brush text-gray-700 dark:text-gray-300 mr-2"></i> | |
<span class="text-gray-700 dark:text-gray-300">UI/UX Design</span> | |
</div> | |
<div class="bg-white dark:bg-gray-800 px-4 py-2 rounded-full shadow-md flex items-center card-hover-effect"> | |
<i class="fas fa-cloud text-gray-700 dark:text-gray-300 mr-2"></i> | |
<span class="text-gray-700 dark:text-gray-300">AWS</span> | |
</div> | |
<div class="bg-white dark:bg-gray-800 px-4 py-2 rounded-full shadow-md flex items-center card-hover-effect"> | |
<i class="fas fa-shield-alt text-gray-700 dark:text-gray-300 mr-2"></i> | |
<span class="text-gray-700 dark:text-gray-300">Security</span> | |
</div> | |
</div> | |
</div> | |
</div> | |
</section> | |
<!-- Projects Section --> | |
<section id="projects" class="py-20 bg-white dark:bg-gray-800"> | |
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"> | |
<h2 class="text-3xl font-bold text-center text-gray-800 dark:text-white mb-4">My Projects</h2> | |
<p class="text-center text-gray-600 dark:text-gray-300 max-w-2xl mx-auto mb-12"> | |
Here are some of my recent projects. Click on each card to see more details. | |
</p> | |
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8"> | |
<!-- Project 1 --> | |
<div class="project-card h-80"> | |
<div class="project-inner relative w-full h-full"> | |
<div class="project-front bg-white dark:bg-gray-700 rounded-xl shadow-lg p-6 flex flex-col h-full"> | |
<div class="bg-indigo-100 dark:bg-indigo-900 p-4 rounded-lg mb-4 self-start"> | |
<i class="fas fa-shopping-cart text-indigo-600 dark:text-indigo-400 text-2xl"></i> | |
</div> | |
<h3 class="text-xl font-semibold text-gray-800 dark:text-white mb-2">E-Commerce Platform</h3> | |
<p class="text-gray-600 dark:text-gray-300 flex-grow">A full-featured online store with payment integration and inventory management.</p> | |
<div class="mt-4 flex flex-wrap gap-2"> | |
<span class="bg-indigo-100 dark:bg-indigo-900 text-indigo-600 dark:text-indigo-400 text-xs px-3 py-1 rounded-full">React</span> | |
<span class="bg-indigo-100 dark:bg-indigo-900 text-indigo-600 dark:text-indigo-400 text-xs px-3 py-1 rounded-full">Node.js</span> | |
<span class="bg-indigo-100 dark:bg-indigo-900 text-indigo-600 dark:text-indigo-400 text-xs px-3 py-1 rounded-full">MongoDB</span> | |
</div> | |
</div> | |
<div class="project-back bg-indigo-600 dark:bg-indigo-800 rounded-xl shadow-lg p-6 flex flex-col justify-center items-center text-white"> | |
<h3 class="text-xl font-semibold mb-4">E-Commerce Platform</h3> | |
<p class="text-center mb-4">Built with modern technologies to provide seamless shopping experience.</p> | |
<ul class="text-sm space-y-2 mb-6"> | |
<li><i class="fas fa-check-circle mr-2"></i> Payment gateway integration</li> | |
<li><i class="fas fa-check-circle mr-2"></i> Admin dashboard</li> | |
<li><i class="fas fa-check-circle mr-2"></i> Product recommendations</li> | |
</ul> | |
<a href="#" class="bg-white text-indigo-600 px-4 py-2 rounded-lg font-medium hover:bg-gray-100 transition">View Project</a> | |
</div> | |
</div> | |
</div> | |
<!-- Project 2 --> | |
<div class="project-card h-80"> | |
<div class="project-inner relative w-full h-full"> | |
<div class="project-front bg-white dark:bg-gray-700 rounded-xl shadow-lg p-6 flex flex-col h-full"> | |
<div class="bg-indigo-100 dark:bg-indigo-900 p-4 rounded-lg mb-4 self-start"> | |
<i class="fas fa-chart-line text-indigo-600 dark:text-indigo-400 text-2xl"></i> | |
</div> | |
<h3 class="text-xl font-semibold text-gray-800 dark:text-white mb-2">Analytics Dashboard</h3> | |
<p class="text-gray-600 dark:text-gray-300 flex-grow">Interactive data visualization tool for business intelligence.</p> | |
<div class="mt-4 flex flex-wrap gap-2"> | |
<span class="bg-indigo-100 dark:bg-indigo-900 text-indigo-600 dark:text-indigo-400 text-xs px-3 py-1 rounded-full">Vue.js</span> | |
<span class="bg-indigo-100 dark:bg-indigo-900 text-indigo-600 dark:text-indigo-400 text-xs px-3 py-1 rounded-full">D3.js</span> | |
<span class="bg-indigo-100 dark:bg-indigo-900 text-indigo-600 dark:text-indigo-400 text-xs px-3 py-1 rounded-full">Firebase</span> | |
</div> | |
</div> | |
<div class="project-back bg-indigo-600 dark:bg-indigo-800 rounded-xl shadow-lg p-6 flex flex-col justify-center items-center text-white"> | |
<h3 class="text-xl font-semibold mb-4">Analytics Dashboard</h3> | |
<p class="text-center mb-4">Real-time data visualization with customizable reports.</p> | |
<ul class="text-sm space-y-2 mb-6"> | |
<li><i class="fas fa-check-circle mr-2"></i> 20+ chart types</li> | |
<li><i class="fas fa-check-circle mr-2"></i> Export to PDF/CSV</li> | |
<li><i class="fas fa-check-circle mr-2"></i> Role-based access</li> | |
</ul> | |
<a href="#" class="bg-white text-indigo-600 px-4 py-2 rounded-lg font-medium hover:bg-gray-100 transition">View Project</a> | |
</div> | |
</div> | |
</div> | |
<!-- Project 3 --> | |
<div class="project-card h-80"> | |
<div class="project-inner relative w-full h-full"> | |
<div class="project-front bg-white dark:bg-gray-700 rounded-xl shadow-lg p-6 flex flex-col h-full"> | |
<div class="bg-indigo-100 dark:bg-indigo-900 p-4 rounded-lg mb-4 self-start"> | |
<i class="fas fa-mobile-alt text-indigo-600 dark:text-indigo-400 text-2xl"></i> | |
</div> | |
<h3 class="text-xl font-semibold text-gray-800 dark:text-white mb-2">Fitness App</h3> | |
<p class="text-gray-600 dark:text-gray-300 flex-grow">Mobile application for tracking workouts and nutrition.</p> | |
<div class="mt-4 flex flex-wrap gap-2"> | |
<span class="bg-indigo-100 dark:bg-indigo-900 text-indigo-600 dark:text-indigo-400 text-xs px-3 py-1 rounded-full">React Native</span> | |
<span class="bg-indigo-100 dark:bg-indigo-900 text-indigo-600 dark:text-indigo-400 text-xs px-3 py-1 rounded-full">GraphQL</span> | |
<span class="bg-indigo-100 dark:bg-indigo-900 text-indigo-600 dark:text-indigo-400 text-xs px-3 py-1 rounded-full">MongoDB</span> | |
</div> | |
</div> | |
<div class="project-back bg-indigo-600 dark:bg-indigo-800 rounded-xl shadow-lg p-6 flex flex-col justify-center items-center text-white"> | |
<h3 class="text-xl font-semibold mb-4">Fitness App</h3> | |
<p class="text-center mb-4">Comprehensive workout and nutrition tracking solution.</p> | |
<ul class="text-sm space-y-2 mb-6"> | |
<li><i class="fas fa-check-circle mr-2"></i> 500+ exercises</li> | |
<li><i class="fas fa-check-circle mr-2"></i> Meal planner</li> | |
<li><i class="fas fa-check-circle mr-2"></i> Progress tracking</li> | |
</ul> | |
<a href="#" class="bg-white text-indigo-600 px-4 py-2 rounded-lg font-medium hover:bg-gray-100 transition">View Project</a> | |
</div> | |
</div> | |
</div> | |
</div> | |
<div class="text-center mt-12"> | |
<a href="#" class="inline-flex items-center px-6 py-3 border border-indigo-600 text-indigo-600 dark:text-indigo-400 dark:border-indigo-400 rounded-lg font-medium hover:bg-indigo-600 hover:text-white dark:hover:bg-indigo-700 transition"> | |
View All Projects <i class="fas fa-arrow-right ml-2"></i> | |
</a> | |
</div> | |
</div> | |
</section> | |
<!-- Testimonials Section --> | |
<section class="py-20 bg-gray-100 dark:bg-gray-900"> | |
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"> | |
<h2 class="text-3xl font-bold text-center text-gray-800 dark:text-white mb-4">Client Testimonials</h2> | |
<p class="text-center text-gray-600 dark:text-gray-300 max-w-2xl mx-auto mb-12"> | |
Here's what people I've worked with have to say about my work. | |
</p> | |
<div class="grid grid-cols-1 md:grid-cols-3 gap-8"> | |
<!-- Testimonial 1 --> | |
<div class="bg-white dark:bg-gray-800 p-8 rounded-xl shadow-md card-hover-effect"> | |
<div class="flex items-center mb-4"> | |
<div class="text-yellow-400 mr-2"> | |
<i class="fas fa-star"></i> | |
<i class="fas fa-star"></i> | |
<i class="fas fa-star"></i> | |
<i class="fas fa-star"></i> | |
<i class="fas fa-star"></i> | |
</div> | |
</div> | |
<p class="text-gray-600 dark:text-gray-300 mb-6"> | |
"Alex transformed our e-commerce platform with his technical expertise. The new system is faster, more reliable, and has increased our sales by 30%." | |
</p> | |
<div class="flex items-center"> | |
<img src="https://images.unsplash.com/photo-1560250097-0b93528c311a?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=687&q=80" | |
alt="Client" | |
class="w-12 h-12 rounded-full object-cover mr-4"> | |
<div> | |
<h4 class="font-semibold text-gray-800 dark:text-white">Sarah Johnson</h4> | |
<p class="text-sm text-gray-500">CEO, RetailCorp</p> | |
</div> | |
</div> | |
</div> | |
<!-- Testimonial 2 --> | |
<div class="bg-white dark:bg-gray-800 p-8 rounded-xl shadow-md card-hover-effect"> | |
<div class="flex items-center mb-4"> | |
<div class="text-yellow-400 mr-2"> | |
<i class="fas fa-star"></i> | |
<i class="fas fa-star"></i> | |
<i class="fas fa-star"></i> | |
<i class="fas fa-star"></i> | |
<i class="fas fa-star"></i> | |
</div> | |
</div> | |
<p class="text-gray-600 dark:text-gray-300 mb-6"> | |
"Working with Alex was a pleasure. He delivered our analytics dashboard ahead of schedule and it has become an indispensable tool for our team." | |
</p> | |
<div class="flex items-center"> | |
<img src="https://images.unsplash.com/photo-1573497019940-1c28c88b4f3e?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=687&q=80" | |
alt="Client" | |
class="w-12 h-12 rounded-full object-cover mr-4"> | |
<div> | |
<h4 class="font-semibold text-gray-800 dark:text-white">Michael Chen</h4> | |
<p class="text-sm text-gray-500">CTO, DataInsights</p> | |
</div> | |
</div> | |
</div> | |
<!-- Testimonial 3 --> | |
<div class="bg-white dark:bg-gray-800 p-8 rounded-xl shadow-md card-hover-effect"> | |
<div class="flex items-center mb-4"> | |
<div class="text-yellow-400 mr-2"> | |
<i class="fas fa-star"></i> | |
<i class="fas fa-star"></i> | |
<i class="fas fa-star"></i> | |
<i class="fas fa-star"></i> | |
<i class="fas fa-star-half-alt"></i> | |
</div> | |
</div> | |
<p class="text-gray-600 dark:text-gray-300 mb-6"> | |
"The fitness app Alex developed exceeded our expectations. His attention to detail and user experience focus resulted in an app our customers love." | |
</p> | |
<div class="flex items-center"> | |
<img src="https://images.unsplash.com/photo-1580489944761-15a19d654956?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=761&q=80" | |
alt="Client" | |
class="w-12 h-12 rounded-full object-cover mr-4"> | |
<div> | |
<h4 class="font-semibold text-gray-800 dark:text-white">Emily Rodriguez</h4> | |
<p class="text-sm text-gray-500">Founder, FitLife</p> | |
</div> | |
</div> | |
</div> | |
</div> | |
</div> | |
</section> | |
<!-- Contact Section --> | |
<section id="contact" class="py-20 bg-white dark:bg-gray-800"> | |
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"> | |
<h2 class="text-3xl font-bold text-center text-gray-800 dark:text-white mb-4">Get In Touch</h2> | |
<p class="text-center text-gray-600 dark:text-gray-300 max-w-2xl mx-auto mb-12"> | |
Have a project in mind or want to discuss potential opportunities? I'd love to hear from you! | |
</p> | |
<div class="flex flex-col md:flex-row"> | |
<div class="md:w-1/2 mb-10 md:mb-0 md:pr-8"> | |
<div class="bg-gray-100 dark:bg-gray-700 p-8 rounded-xl shadow-md h-full"> | |
<h3 class="text-xl font-semibold text-gray-800 dark:text-white mb-6">Contact Information</h3> | |
<div class="space-y-6"> | |
<div class="flex items-start"> | |
<div class="bg-indigo-100 dark:bg-indigo-900 p-3 rounded-full mr-4"> | |
<i class="fas fa-envelope text-indigo-600 dark:text-indigo-400"></i> | |
</div> | |
<div> | |
<h4 class="font-medium text-gray-800 dark:text-white mb-1">Email</h4> | |
<a href="mailto:alex@example.com" class="text-indigo-600 dark:text-indigo-400 hover:underline">alex@example.com</a> | |
</div> | |
</div> | |
<div class="flex items-start"> | |
<div class="bg-indigo-100 dark:bg-indigo-900 p-3 rounded-full mr-4"> | |
<i class="fas fa-phone-alt text-indigo-600 dark:text-indigo-400"></i> | |
</div> | |
<div> | |
<h4 class="font-medium text-gray-800 dark:text-white mb-1">Phone</h4> | |
<a href="tel:+1234567890" class="text-indigo-600 dark:text-indigo-400 hover:underline">+1 (234) 567-890</a> | |
</div> | |
</div> | |
<div class="flex items-start"> | |
<div class="bg-indigo-100 dark:bg-indigo-900 p-3 rounded-full mr-4"> | |
<i class="fas fa-map-marker-alt text-indigo-600 dark:text-indigo-400"></i> | |
</div> | |
<div> | |
<h4 class="font-medium text-gray-800 dark:text-white mb-1">Location</h4> | |
<p class="text-gray-600 dark:text-gray-300">San Francisco, CA</p> | |
</div> | |
</div> | |
</div> | |
<div class="mt-8"> | |
<h3 class="text-xl font-semibold text-gray-800 dark:text-white mb-6">Follow Me</h3> | |
<div class="flex space-x-4"> | |
<a href="#" class="bg-gray-200 dark:bg-gray-600 p-3 rounded-full text-gray-700 dark:text-gray-300 hover:bg-indigo-600 hover:text-white transition"> | |
<i class="fab fa-github"></i> | |
</a> | |
<a href="#" class="bg-gray-200 dark:bg-gray-600 p-3 rounded-full text-gray-700 dark:text-gray-300 hover:bg-indigo-600 hover:text-white transition"> | |
<i class="fab fa-linkedin-in"></i> | |
</a> | |
<a href="#" class="bg-gray-200 dark:bg-gray-600 p-3 rounded-full text-gray-700 dark:text-gray-300 hover:bg-indigo-600 hover:text-white transition"> | |
<i class="fab fa-twitter"></i> | |
</a> | |
<a href="#" class="bg-gray-200 dark:bg-gray-600 p-3 rounded-full text-gray-700 dark:text-gray-300 hover:bg-indigo-600 hover:text-white transition"> | |
<i class="fab fa-instagram"></i> | |
</a> | |
</div> | |
</div> | |
</div> | |
</div> | |
<div class="md:w-1/2"> | |
<form class="bg-gray-100 dark:bg-gray-700 p-8 rounded-xl shadow-md"> | |
<div class="grid grid-cols-1 md:grid-cols-2 gap-6 mb-6"> | |
<div> | |
<label for="name" class="block text-gray-700 dark:text-gray-300 mb-2">Name</label> | |
<input type="text" id="name" class="w-full px-4 py-2 rounded-lg border border-gray-300 dark:border-gray-600 focus:outline-none focus:ring-2 focus:ring-indigo-500 dark:bg-gray-800"> | |
</div> | |
<div> | |
<label for="email" class="block text-gray-700 dark:text-gray-300 mb-2">Email</label> | |
<input type="email" id="email" class="w-full px-4 py-2 rounded-lg border border-gray-300 dark:border-gray-600 focus:outline-none focus:ring-2 focus:ring-indigo-500 dark:bg-gray-800"> | |
</div> | |
</div> | |
<div class="mb-6"> | |
<label for="subject" class="block text-gray-700 dark:text-gray-300 mb-2">Subject</label> | |
<input type="text" id="subject" class="w-full px-4 py-2 rounded-lg border border-gray-300 dark:border-gray-600 focus:outline-none focus:ring-2 focus:ring-indigo-500 dark:bg-gray-800"> | |
</div> | |
<div class="mb-6"> | |
<label for="message" class="block text-gray-700 dark:text-gray-300 mb-2">Message</label> | |
<textarea id="message" rows="5" class="w-full px-4 py-2 rounded-lg border border-gray-300 dark:border-gray-600 focus:outline-none focus:ring-2 focus:ring-indigo-500 dark:bg-gray-800"></textarea> | |
</div> | |
<button type="submit" class="w-full bg-indigo-600 text-white px-6 py-3 rounded-lg font-medium hover:bg-indigo-700 transition shadow-lg"> | |
Send Message <i class="fas fa-paper-plane ml-2"></i> | |
</button> | |
</form> | |
</div> | |
</div> | |
</div> | |
</section> | |
<!-- Footer --> | |
<footer class="bg-gray-800 text-white py-8"> | |
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"> | |
<div class="flex flex-col md:flex-row justify-between items-center"> | |
<div class="mb-4 md:mb-0"> | |
<span class="text-xl font-bold text-indigo-400">Portfolio</span> | |
<p class="text-gray-400 mt-2">© 2023 All rights reserved.</p> | |
</div> | |
<div class="flex space-x-6"> | |
<a href="#" class="text-gray-400 hover:text-white transition"> | |
<i class="fab fa-github"></i> | |
</a> | |
<a href="#" class="text-gray-400 hover:text-white transition"> | |
<i class="fab fa-linkedin-in"></i> | |
</a> | |
<a href="#" class="text-gray-400 hover:text-white transition"> | |
<i class="fab fa-twitter"></i> | |
</a> | |
<a href="#" class="text-gray-400 hover:text-white transition"> | |
<i class="fab fa-instagram"></i> | |
</a> | |
</div> | |
</div> | |
</div> | |
</footer> | |
<script> | |
// Mobile menu toggle | |
const mobileMenuButton = document.getElementById('mobileMenuButton'); | |
const mobileMenu = document.getElementById('mobileMenu'); | |
mobileMenuButton.addEventListener('click', () => { | |
mobileMenu.classList.toggle('hidden'); | |
}); | |
// Dark mode toggle | |
const darkModeToggle = document.getElementById('darkModeToggle'); | |
const html = document.documentElement; | |
// Check for saved user preference or use system preference | |
if (localStorage.getItem('darkMode') === 'true' || | |
(!localStorage.getItem('darkMode') && window.matchMedia('(prefers-color-scheme: dark)').matches)) { | |
html.classList.add('dark'); | |
} | |
darkModeToggle.addEventListener('click', () => { | |
html.classList.toggle('dark'); | |
localStorage.setItem('darkMode', html.classList.contains('dark')); | |
}); | |
// Smooth scrolling for navigation links | |
document.querySelectorAll('a[href^="#"]').forEach(anchor => { | |
anchor.addEventListener('click', function (e) { | |
e.preventDefault(); | |
const targetId = this.getAttribute('href'); | |
const targetElement = document.querySelector(targetId); | |
if (targetElement) { | |
window.scrollTo({ | |
top: targetElement.offsetTop - 80, | |
behavior: 'smooth' | |
}); | |
// Close mobile menu if open | |
mobileMenu.classList.add('hidden'); | |
} | |
}); | |
}); | |
// Animate skill bars when they come into view | |
const skillBars = document.querySelectorAll('.skill-bar'); | |
const animateSkillBars = () => { | |
skillBars.forEach(bar => { | |
const rect = bar.getBoundingClientRect(); | |
const isVisible = (rect.top <= window.innerHeight * 0.8); | |
if (isVisible) { | |
const width = bar.style.width; | |
bar.style.width = '0'; | |
setTimeout(() => { | |
bar.style.width = width; | |
}, 100); | |
} | |
}); | |
}; | |
// Run once on page load | |
animateSkillBars(); | |
// And then on scroll | |
window.addEventListener('scroll', animateSkillBars); | |
// Form submission | |
const contactForm = document.querySelector('form'); | |
if (contactForm) { | |
contactForm.addEventListener('submit', (e) => { | |
e.preventDefault(); | |
// Get form values | |
const name = document.getElementById('name').value; | |
const email = document.getElementById('email').value; | |
const subject = document.getElementById('subject').value; | |
const message = document.getElementById('message').value; | |
// Here you would typically send the data to a server | |
console.log({name, email, subject, message}); | |
// Show success message | |
alert('Thank you for your message! I will get back to you soon.'); | |
// Reset form | |
contactForm.reset(); | |
}); | |
} | |
</script> | |
<p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=AamirAli123/portfolio" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body> | |
</html> |