Spaces:
Running
Running
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <title>PixelDev Portfolio</title> | |
| <script src="https://cdn.tailwindcss.com"></script> | |
| <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script> | |
| <style> | |
| @import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@300;400;500;600&display=swap'); | |
| :root { | |
| --primary: #8b5cf6; | |
| --secondary: #06b6d4; | |
| --bg-light: #fafafa; | |
| --text-light: #1e293b; | |
| --border-light: #e2e8f0; | |
| --bg-dark: #0f172a; | |
| --text-dark: #f1f5f9; | |
| --border-dark: #334155; | |
| } | |
| body { | |
| font-family: 'JetBrains Mono', monospace; | |
| transition: all 0.3s ease; | |
| } | |
| .theme-light { | |
| background-color: var(--bg-light); | |
| color: var(--text-light); | |
| } | |
| .theme-dark { | |
| background-color: var(--bg-dark); | |
| color: var(--text-dark); | |
| } | |
| .border-style { | |
| border: 1px solid var(--border-light); | |
| } | |
| .theme-dark .border-style { | |
| border-color: var(--border-dark); | |
| } | |
| .decorative-box { | |
| position: relative; | |
| padding: 2rem; | |
| margin: 2rem auto; | |
| max-width: 400px; | |
| text-align: center; | |
| line-height: 1.8; | |
| } | |
| .fade-in { | |
| opacity: 0; | |
| transform: translateY(20px); | |
| transition: all 0.6s ease; | |
| } | |
| .fade-in.visible { | |
| opacity: 1; | |
| transform: translateY(0); | |
| } | |
| .project-card { | |
| transition: all 0.3s ease; | |
| } | |
| .project-card:hover { | |
| transform: translateY(-4px); | |
| box-shadow: 0 10px 25px rgba(139, 92, 246, 0.2); | |
| } | |
| .skill-badge { | |
| transition: all 0.2s ease; | |
| } | |
| .skill-badge:hover { | |
| transform: scale(1.05); | |
| } | |
| .btn-primary { | |
| background-color: var(--primary); | |
| color: white; | |
| transition: all 0.3s ease; | |
| } | |
| .btn-primary:hover { | |
| background-color: var(--secondary); | |
| } | |
| .theme-dark .btn-primary { | |
| background-color: var(--secondary); | |
| } | |
| .theme-dark .btn-primary:hover { | |
| background-color: var(--primary); | |
| } | |
| </style> | |
| </head> | |
| <body class="theme-light"> | |
| <!-- Theme Toggle --> | |
| <button id="themeToggle" class="fixed top-4 right-4 z-50 p-2 rounded-full bg-gray-200 dark:bg-gray-700 transition-colors"> | |
| <i data-feather="moon" class="w-5 h-5"></i> | |
| </button> | |
| <!-- Navigation --> | |
| <nav class="p-6"> | |
| <div class="max-w-6xl mx-auto flex justify-center space-x-8"> | |
| <a href="#about" class="hover:text-purple-600 transition-colors">About</a> | |
| <a href="#projects" class="hover:text-purple-600 transition-colors">Projects</a> | |
| <a href="#skills" class="hover:text-purple-600 transition-colors">Skills</a> | |
| <a href="#contact" class="hover:text-purple-600 transition-colors">Contact</a> | |
| </div> | |
| </nav> | |
| <!-- About Section --> | |
| <section id="about" class="min-h-screen flex items-center justify-center px-4"> | |
| <div class="decorative-box fade-in"> | |
| <div class="border-style rounded-lg p-8"> | |
| <div class="text-lg font-light tracking-wider"> | |
| ╔═══.·:·.About me.·:·.═══╗<br> | |
| <span class="text-purple-600">₊‧.°.⋆ 「 ✦ Devil ✦ 」</span><br> | |
| <span class="text-cyan-600">₊‧.°.⋆ why am i here?</span><br> | |
| <span class="text-pink-600">⊹₊ ㆍ✿ Im Js Developer ㆍ✿ㆍ₊⊹</span><br> | |
| <span class="text-green-600">₊‧.° just being alone.✦</span><br> | |
| ╚═════════════╝ | |
| </div> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- Projects Section --> | |
| <section id="projects" class="py-20 px-4"> | |
| <div class="max-w-6xl mx-auto"> | |
| <h2 class="text-3xl font-bold text-center mb-12 fade-in">Projects</h2> | |
| <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8"> | |
| <!-- Project 1 --> | |
| <div class="project-card border-style rounded-lg p-6 fade-in"> | |
| <div class="w-full h-48 bg-gradient-to-br from-purple-400 to-cyan-400 rounded mb-4"></div> | |
| <h3 class="text-xl font-semibold mb-2">E-commerce Platform</h3> | |
| <p class="text-sm mb-4">Full-stack shopping experience with React & Node.js</p> | |
| <div class="flex space-x-2"> | |
| <button class="btn-primary px-3 py-1 text-xs rounded">View Code</button> | |
| <button class="border-style px-3 py-1 text-xs rounded hover:bg-gray-100">Live Demo</button> | |
| </div> | |
| </div> | |
| <!-- Project 2 --> | |
| <div class="project-card border-style rounded-lg p-6 fade-in"> | |
| <div class="w-full h-48 bg-gradient-to-br from-pink-400 to-purple-400 rounded mb-4"></div> | |
| <h3 class="text-xl font-semibold mb-2">Task Manager</h3> | |
| <p class="text-sm mb-4">Minimalist todo app with drag & drop functionality</p> | |
| <div class="flex space-x-2"> | |
| <button class="btn-primary px-3 py-1 text-xs rounded">View Code</button> | |
| <button class="border-style px-3 py-1 text-xs rounded hover:bg-gray-100">Live Demo</button> | |
| </div> | |
| </div> | |
| <!-- Project 3 --> | |
| <div class="project-card border-style rounded-lg p-6 fade-in"> | |
| <div class="w-full h-48 bg-gradient-to-br from-cyan-400 to-green-400 rounded mb-4"></div> | |
| <h3 class="text-xl font-semibold mb-2">Weather Dashboard</h3> | |
| <p class="text-sm mb-4">Real-time weather data with beautiful visualizations</p> | |
| <div class="flex space-x-2"> | |
| <button class="btn-primary px-3 py-1 text-xs rounded">View Code</button> | |
| <button class="border-style px-3 py-1 text-xs rounded hover:bg-gray-100">Live Demo</button> | |
| </div> | |
| </div> | |
| <!-- Project 4 --> | |
| <div class="project-card border-style rounded-lg p-6 fade-in"> | |
| <div class="w-full h-48 bg-gradient-to-br from-yellow-400 to-orange-400 rounded mb-4"></div> | |
| <h3 class="text-xl font-semibold mb-2">Portfolio Generator</h3> | |
| <p class="text-sm mb-4">Dynamic portfolio builder for developers</p> | |
| <div class="flex space-x-2"> | |
| <button class="btn-primary px-3 py-1 text-xs rounded">View Code</button> | |
| <button class="border-style px-3 py-1 text-xs rounded hover:bg-gray-100">Live Demo</button> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- Skills Section --> | |
| <section id="skills" class="py-20 px-4"> | |
| <div class="max-w-4xl mx-auto"> | |
| <h2 class="text-3xl font-bold text-center mb-12 fade-in">Skills</h2> | |
| <div class="flex flex-wrap justify-center gap-4"> | |
| <span class="skill-badge border-style px-4 py-2 rounded-full text-sm fade-in">HTML5</span> | |
| <span class="skill-badge border-style px-4 py-2 rounded-full text-sm fade-in">CSS3</span> | |
| <span class="skill-badge border-style px-4 py-2 rounded-full text-sm fade-in">JavaScript</span> | |
| <span class="skill-badge border-style px-4 py-2 rounded-full text-sm fade-in">Node.js</span> | |
| <span class="skill-badge border-style px-4 py-2 rounded-full text-sm fade-in">React</span> | |
| <span class="skill-badge border-style px-4 py-2 rounded-full text-sm fade-in">Git</span> | |
| <span class="skill-badge border-style px-4 py-2 rounded-full text-sm fade-in">MongoDB</span> | |
| <span class="skill-badge border-style px-4 py-2 rounded-full text-sm fade-in">Express</span> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- Contact Section --> | |
| <section id="contact" class="py-20 px-4"> | |
| <div class="max-w-2xl mx-auto"> | |
| <h2 class="text-3xl font-bold text-center mb-12 fade-in">Contact</h2> | |
| <form class="space-y-6 fade-in"> | |
| <div> | |
| <label class="block text-sm mb-2">Name</label> | |
| <input type="text" class="w-full px-4 py-2 border-style rounded bg-transparent" placeholder="Your name"> | |
| </div> | |
| <div> | |
| <label class="block text-sm mb-2">Email</label> | |
| <input type="email" class="w-full px-4 py-2 border-style rounded bg-transparent" placeholder="your@email.com"> | |
| </div> | |
| <div> | |
| <label class="block text-sm mb-2">Message</label> | |
| <textarea class="w-full px-4 py-2 border-style rounded bg-transparent" rows="4" placeholder="Your message..."></textarea> | |
| </div> | |
| <button type="submit" class="btn-primary px-6 py-2 rounded w-full">Send Message</button> | |
| </form> | |
| <div class="flex justify-center space-x-6 mt-8 fade-in"> | |
| <a href="#" class="hover:text-purple-600 transition-colors"> | |
| <i data-feather="github" class="w-6 h-6"></i> | |
| </a> | |
| <a href="#" class="hover:text-cyan-600 transition-colors"> | |
| <i data-feather="twitter" class="w-6 h-6"></i> | |
| </a> | |
| <a href="#" class="hover:text-blue-600 transition-colors"> | |
| <i data-feather="linkedin" class="w-6 h-6"></i> | |
| </a> | |
| </div> | |
| </div> | |
| </section> | |
| <script> | |
| // Initialize Feather Icons | |
| feather.replace(); | |
| // Theme Toggle | |
| const themeToggle = document.getElementById('themeToggle'); | |
| const body = document.body; | |
| themeToggle.addEventListener('click', () => { | |
| body.classList.toggle('theme-light'); | |
| body.classList.toggle('theme-dark'); | |
| const icon = themeToggle.querySelector('i'); | |
| if (body.classList.contains('theme-dark')) { | |
| icon.setAttribute('data-feather', 'sun'); | |
| } else { | |
| icon.setAttribute('data-feather', 'moon'); | |
| } | |
| feather.replace(); | |
| }); | |
| // Smooth Scroll | |
| document.querySelectorAll('a[href^="#"]').forEach(anchor => { | |
| anchor.addEventListener('click', function (e) { | |
| e.preventDefault(); | |
| document.querySelector(this.getAttribute('href')).scrollIntoView({ | |
| behavior: 'smooth' | |
| }); | |
| }); | |
| }); | |
| // Fade In Animation | |
| const observerOptions = { | |
| threshold: 0.1, | |
| rootMargin: '0px 0px -50px 0px' | |
| }; | |
| const observer = new IntersectionObserver((entries) => { | |
| entries.forEach(entry => { | |
| if (entry.isIntersecting) { | |
| entry.target.classList.add('visible'); | |
| } | |
| }); | |
| }, observerOptions); | |
| document.querySelectorAll('.fade-in').forEach(el => { | |
| observer.observe(el); | |
| }); | |
| </script> | |
| </body> | |
| </html> | |