Spaces:
Running
Running
<html lang="en"> | |
<head> | |
<meta charset="UTF-8"> | |
<meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
<title>Andreas Chandra | AI Engineer</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> | |
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap'); | |
body { | |
font-family: 'Inter', sans-serif; | |
scroll-behavior: smooth; | |
} | |
.gradient-text { | |
background: linear-gradient(90deg, #3b82f6, #8b5cf6); | |
-webkit-background-clip: text; | |
background-clip: text; | |
color: transparent; | |
} | |
.project-card:hover { | |
transform: translateY(-5px); | |
box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); | |
} | |
.nav-link { | |
position: relative; | |
} | |
.nav-link::after { | |
content: ''; | |
position: absolute; | |
width: 0; | |
height: 2px; | |
bottom: -2px; | |
left: 0; | |
background: linear-gradient(90deg, #3b82f6, #8b5cf6); | |
transition: width 0.3s ease; | |
} | |
.nav-link:hover::after { | |
width: 100%; | |
} | |
.timeline-item::before { | |
content: ''; | |
position: absolute; | |
left: -20px; | |
top: 0; | |
width: 12px; | |
height: 12px; | |
border-radius: 50%; | |
background: linear-gradient(90deg, #3b82f6, #8b5cf6); | |
} | |
</style> | |
</head> | |
<body class="bg-gray-50 text-gray-800"> | |
<!-- Navigation --> | |
<nav class="fixed w-full bg-white shadow-sm z-50"> | |
<div class="max-w-6xl 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 gradient-text">JD</span> | |
</div> | |
<div class="hidden md:flex items-center space-x-8"> | |
<a href="#home" class="nav-link text-gray-700 hover:text-gray-900">Home</a> | |
<a href="#projects" class="nav-link text-gray-700 hover:text-gray-900">Projects</a> | |
<a href="#resume" class="nav-link text-gray-700 hover:text-gray-900">Resume</a> | |
<a href="#contact" class="nav-link text-gray-700 hover:text-gray-900">Contact</a> | |
</div> | |
<div class="md:hidden flex items-center"> | |
<button id="menu-btn" class="text-gray-500 hover:text-gray-900"> | |
<i class="fas fa-bars text-xl"></i> | |
</button> | |
</div> | |
</div> | |
</div> | |
<!-- Mobile menu --> | |
<div id="mobile-menu" class="hidden md:hidden bg-white pb-4 px-4 shadow-lg"> | |
<a href="#home" class="block py-2 text-gray-700 hover:text-gray-900">Home</a> | |
<a href="#projects" class="block py-2 text-gray-700 hover:text-gray-900">Projects</a> | |
<a href="#resume" class="block py-2 text-gray-700 hover:text-gray-900">Resume</a> | |
<a href="#contact" class="block py-2 text-gray-700 hover:text-gray-900">Contact</a> | |
</div> | |
</nav> | |
<!-- Hero Section --> | |
<section id="home" class="pt-24 pb-16 md:pt-32 md:pb-24 px-4 sm:px-6 lg:px-8 max-w-6xl mx-auto"> | |
<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-5xl font-bold mb-4">Hi, I'm <span class="gradient-text">Andreas Chandra</span></h1> | |
<h2 class="text-2xl md:text-3xl font-semibold text-gray-600 mb-6">AI Engineer</h2> | |
<p class="text-gray-600 mb-8 max-w-lg"> | |
I build and deploy machine learning models that have business impacts. | |
</p> | |
<div class="flex space-x-4"> | |
<a href="#projects" class="px-6 py-3 bg-gradient-to-r from-blue-500 to-purple-500 text-white rounded-lg font-medium hover:opacity-90 transition"> | |
View Projects | |
</a> | |
<a href="#contact" class="px-6 py-3 border border-gray-300 rounded-lg font-medium hover:bg-gray-100 transition"> | |
Contact Me | |
</a> | |
</div> | |
</div> | |
<div class="md:w-1/2 flex justify-center"> | |
<div class="relative w-64 h-64 md:w-80 md:h-80 rounded-full overflow-hidden border-4 border-white shadow-xl"> | |
<img src="https://images.unsplash.com/photo-1507003211169-0a1dd7228f2d?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=774&q=80" | |
alt="John Doe" class="w-full h-full object-cover"> | |
</div> | |
</div> | |
</div> | |
</section> | |
<!-- Projects Section --> | |
<section id="projects" class="py-16 bg-gray-100"> | |
<div class="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8"> | |
<div class="text-center mb-16"> | |
<h2 class="text-3xl font-bold mb-4">Featured <span class="gradient-text">Projects</span></h2> | |
<p class="text-gray-600 max-w-2xl mx-auto"> | |
Here are some of my recent projects that showcase my skills and expertise. | |
</p> | |
</div> | |
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8"> | |
<!-- Project 1 --> | |
<div class="project-card bg-white rounded-xl overflow-hidden shadow-md transition duration-300"> | |
<div class="h-48 bg-gradient-to-r from-blue-400 to-purple-500 flex items-center justify-center"> | |
<i class="fas fa-laptop-code text-white text-6xl"></i> | |
</div> | |
<div class="p-6"> | |
<h3 class="text-xl font-bold mb-2">OCR</h3> | |
<p class="text-gray-600 mb-4"> | |
An end-to-end OCR Receipts. | |
</p> | |
<div class="flex flex-wrap gap-2 mb-4"> | |
<span class="px-3 py-1 bg-blue-100 text-blue-800 text-xs font-medium rounded-full">React</span> | |
<span class="px-3 py-1 bg-green-100 text-green-800 text-xs font-medium rounded-full">Node.js</span> | |
<span class="px-3 py-1 bg-yellow-100 text-yellow-800 text-xs font-medium rounded-full">MongoDB</span> | |
<span class="px-3 py-1 bg-red-100 text-red-800 text-xs font-medium rounded-full">Stripe API</span> | |
</div> | |
<div class="flex space-x-3"> | |
<a href="#" class="text-blue-500 hover:text-blue-700"> | |
<i class="fas fa-external-link-alt"></i> Live Demo | |
</a> | |
<a href="#" class="text-gray-500 hover:text-gray-700"> | |
<i class="fab fa-github"></i> Source Code | |
</a> | |
</div> | |
</div> | |
</div> | |
<!-- Project 2 --> | |
<div class="project-card bg-white rounded-xl overflow-hidden shadow-md transition duration-300"> | |
<div class="h-48 bg-gradient-to-r from-green-400 to-blue-500 flex items-center justify-center"> | |
<i class="fas fa-mobile-alt text-white text-6xl"></i> | |
</div> | |
<div class="p-6"> | |
<h3 class="text-xl font-bold mb-2">Question Answering</h3> | |
<p class="text-gray-600 mb-4"> | |
A dataset for Indonesian question answering. | |
</p> | |
<div class="flex flex-wrap gap-2 mb-4"> | |
<span class="px-3 py-1 bg-purple-100 text-purple-800 text-xs font-medium rounded-full">React Native</span> | |
<span class="px-3 py-1 bg-blue-100 text-blue-800 text-xs font-medium rounded-full">Firebase</span> | |
<span class="px-3 py-1 bg-pink-100 text-pink-800 text-xs font-medium rounded-full">D3.js</span> | |
</div> | |
<div class="flex space-x-3"> | |
<a href="#" class="text-blue-500 hover:text-blue-700"> | |
<i class="fas fa-external-link-alt"></i> Live Demo | |
</a> | |
<a href="#" class="text-gray-500 hover:text-gray-700"> | |
<i class="fab fa-github"></i> Source Code | |
</a> | |
</div> | |
</div> | |
</div> | |
<!-- Project 3 --> | |
<div class="project-card bg-white rounded-xl overflow-hidden shadow-md transition duration-300"> | |
<div class="h-48 bg-gradient-to-r from-purple-500 to-pink-500 flex items-center justify-center"> | |
<i class="fas fa-chart-line text-white text-6xl"></i> | |
</div> | |
<div class="p-6"> | |
<h3 class="text-xl font-bold mb-2">MarqetSim</h3> | |
<p class="text-gray-600 mb-4"> | |
LLM-powered multi agents persona for market research. | |
</p> | |
<div class="flex flex-wrap gap-2 mb-4"> | |
<span class="px-3 py-1 bg-blue-100 text-blue-800 text-xs font-medium rounded-full">Vue.js</span> | |
<span class="px-3 py-1 bg-green-100 text-green-800 text-xs font-medium rounded-full">Python</span> | |
<span class="px-3 py-1 bg-red-100 text-red-800 text-xs font-medium rounded-full">PostgreSQL</span> | |
<span class="px-3 py-1 bg-yellow-100 text-yellow-800 text-xs font-medium rounded-full">Chart.js</span> | |
</div> | |
<div class="flex space-x-3"> | |
<a href="#" class="text-blue-500 hover:text-blue-700"> | |
<i class="fas fa-external-link-alt"></i> Live Demo | |
</a> | |
<a href="#" class="text-gray-500 hover:text-gray-700"> | |
<i class="fab fa-github"></i> Source Code | |
</a> | |
</div> | |
</div> | |
</div> | |
</div> | |
<div class="text-center mt-12"> | |
<a href="#" class="inline-block px-6 py-3 border border-gray-300 rounded-lg font-medium hover:bg-gray-100 transition"> | |
View All Projects | |
</a> | |
</div> | |
</div> | |
</section> | |
<!-- Resume Section --> | |
<section id="resume" class="py-16"> | |
<div class="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8"> | |
<div class="text-center mb-16"> | |
<h2 class="text-3xl font-bold mb-4">My <span class="gradient-text">Resume</span></h2> | |
<p class="text-gray-600 max-w-2xl mx-auto"> | |
My professional journey and the skills I've acquired along the way. | |
</p> | |
</div> | |
<div class="flex flex-col md:flex-row gap-8"> | |
<!-- Experience --> | |
<div class="md:w-1/2"> | |
<h3 class="text-2xl font-bold mb-6 flex items-center"> | |
<i class="fas fa-briefcase mr-3 text-blue-500"></i> Experience | |
</h3> | |
<div class="relative pl-8 border-l-2 border-gray-200 space-y-8"> | |
<!-- Experience 1 --> | |
<div class="timeline-item relative"> | |
<div class="bg-white p-6 rounded-lg shadow-sm"> | |
<h4 class="font-bold text-lg mb-1">Senior Software Engineer</h4> | |
<div class="text-blue-500 mb-2">Tech Solutions Inc. • 2020 - Present</div> | |
<p class="text-gray-600"> | |
Lead development of enterprise applications, mentor junior developers, and implement CI/CD pipelines. | |
</p> | |
</div> | |
</div> | |
<!-- Experience 2 --> | |
<div class="timeline-item relative"> | |
<div class="bg-white p-6 rounded-lg shadow-sm"> | |
<h4 class="font-bold text-lg mb-1">Software Developer</h4> | |
<div class="text-blue-500 mb-2">Digital Innovations • 2017 - 2020</div> | |
<p class="text-gray-600"> | |
Developed web applications using React and Node.js, optimized database performance, and implemented RESTful APIs. | |
</p> | |
</div> | |
</div> | |
<!-- Experience 3 --> | |
<div class="timeline-item relative"> | |
<div class="bg-white p-6 rounded-lg shadow-sm"> | |
<h4 class="font-bold text-lg mb-1">Junior Developer</h4> | |
<div class="text-blue-500 mb-2">StartUp Labs • 2015 - 2017</div> | |
<p class="text-gray-600"> | |
Assisted in front-end development, fixed bugs, and contributed to agile development processes. | |
</p> | |
</div> | |
</div> | |
</div> | |
</div> | |
<!-- Education & Skills --> | |
<div class="md:w-1/2"> | |
<h3 class="text-2xl font-bold mb-6 flex items-center"> | |
<i class="fas fa-graduation-cap mr-3 text-purple-500"></i> Education | |
</h3> | |
<div class="relative pl-8 border-l-2 border-gray-200 space-y-8 mb-12"> | |
<!-- Education 1 --> | |
<div class="timeline-item relative"> | |
<div class="bg-white p-6 rounded-lg shadow-sm"> | |
<h4 class="font-bold text-lg mb-1">MSc in Computer Science</h4> | |
<div class="text-purple-500 mb-2">Stanford University • 2013 - 2015</div> | |
<p class="text-gray-600"> | |
Specialized in Artificial Intelligence and Machine Learning with a 4.0 GPA. | |
</p> | |
</div> | |
</div> | |
<!-- Education 2 --> | |
<div class="timeline-item relative"> | |
<div class="bg-white p-6 rounded-lg shadow-sm"> | |
<h4 class="font-bold text-lg mb-1">BSc in Software Engineering</h4> | |
<div class="text-purple-500 mb-2">MIT • 2009 - 2013</div> | |
<p class="text-gray-600"> | |
Graduated with honors. Focus on web technologies and software architecture. | |
</p> | |
</div> | |
</div> | |
</div> | |
<h3 class="text-2xl font-bold mb-6 flex items-center"> | |
<i class="fas fa-code mr-3 text-green-500"></i> Skills | |
</h3> | |
<div class="bg-white p-6 rounded-lg shadow-sm"> | |
<div class="mb-6"> | |
<h4 class="font-medium mb-3">Programming</h4> | |
<div class="flex flex-wrap gap-2"> | |
<span class="px-3 py-1 bg-blue-100 text-blue-800 rounded-full">Python</span> | |
<span class="px-3 py-1 bg-yellow-100 text-yellow-800 rounded-full">SQL</span> | |
<span class="px-3 py-1 bg-green-100 text-green-800 rounded-full">Bash</span> | |
</div> | |
</div> | |
<div class="mb-6"> | |
<h4 class="font-medium mb-3">Machine Learning</h4> | |
<div class="flex flex-wrap gap-2"> | |
<span class="px-3 py-1 bg-green-100 text-green-800 rounded-full">Scikit-learn</span> | |
<span class="px-3 py-1 bg-blue-100 text-blue-800 rounded-full">OpenCV</span> | |
<span class="px-3 py-1 bg-red-100 text-red-800 rounded-full">PyTorch</span> | |
</div> | |
</div> | |
<div> | |
<h4 class="font-medium mb-3">Other</h4> | |
<div class="flex flex-wrap gap-2"> | |
<span class="px-3 py-1 bg-blue-100 text-blue-800 rounded-full">Docker</span> | |
<span class="px-3 py-1 bg-green-100 text-green-800 rounded-full">GCP</span> | |
<span class="px-3 py-1 bg-red-100 text-red-800 rounded-full">Git</span> | |
<span class="px-3 py-1 bg-yellow-100 text-yellow-800 rounded-full">PostgreSQL</span> | |
</div> | |
</div> | |
</div> | |
</div> | |
</div> | |
<div class="text-center mt-12"> | |
<a href="#" class="inline-flex items-center px-6 py-3 bg-gradient-to-r from-blue-500 to-purple-500 text-white rounded-lg font-medium hover:opacity-90 transition"> | |
<i class="fas fa-download mr-2"></i> Download Full Resume | |
</a> | |
</div> | |
</div> | |
</section> | |
<!-- Contact Section --> | |
<section id="contact" class="py-16 bg-gray-100"> | |
<div class="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8"> | |
<div class="text-center mb-16"> | |
<h2 class="text-3xl font-bold mb-4">Get In <span class="gradient-text">Touch</span></h2> | |
<p class="text-gray-600 max-w-2xl mx-auto"> | |
Have a project in mind or want to discuss potential opportunities? Feel free to reach out! | |
</p> | |
</div> | |
<div class="flex flex-col md:flex-row gap-12"> | |
<div class="md:w-1/2"> | |
<form class="space-y-6"> | |
<div> | |
<label for="name" class="block text-sm font-medium text-gray-700 mb-1">Name</label> | |
<input type="text" id="name" class="w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-blue-500 outline-none transition"> | |
</div> | |
<div> | |
<label for="email" class="block text-sm font-medium text-gray-700 mb-1">Email</label> | |
<input type="email" id="email" class="w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-blue-500 outline-none transition"> | |
</div> | |
<div> | |
<label for="message" class="block text-sm font-medium text-gray-700 mb-1">Message</label> | |
<textarea id="message" rows="5" class="w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-blue-500 outline-none transition"></textarea> | |
</div> | |
<button type="submit" class="w-full px-6 py-3 bg-gradient-to-r from-blue-500 to-purple-500 text-white rounded-lg font-medium hover:opacity-90 transition"> | |
Send Message | |
</button> | |
</form> | |
</div> | |
<div class="md:w-1/2"> | |
<div class="bg-white p-8 rounded-xl shadow-sm h-full"> | |
<h3 class="text-xl font-bold mb-6">Contact Information</h3> | |
<div class="space-y-6"> | |
<div class="flex items-start"> | |
<div class="flex-shrink-0 h-10 w-10 rounded-full bg-blue-100 flex items-center justify-center text-blue-500"> | |
<i class="fas fa-envelope"></i> | |
</div> | |
<div class="ml-4"> | |
<h4 class="font-medium text-gray-900">Email</h4> | |
<p class="text-gray-600">[email protected]</p> | |
</div> | |
</div> | |
<div class="flex items-start"> | |
<div class="flex-shrink-0 h-10 w-10 rounded-full bg-purple-100 flex items-center justify-center text-purple-500"> | |
<i class="fas fa-phone-alt"></i> | |
</div> | |
<div class="ml-4"> | |
<h4 class="font-medium text-gray-900">Phone</h4> | |
<p class="text-gray-600">+1 (555) 123-4567</p> | |
</div> | |
</div> | |
<div class="flex items-start"> | |
<div class="flex-shrink-0 h-10 w-10 rounded-full bg-green-100 flex items-center justify-center text-green-500"> | |
<i class="fas fa-map-marker-alt"></i> | |
</div> | |
<div class="ml-4"> | |
<h4 class="font-medium text-gray-900">Location</h4> | |
<p class="text-gray-600">San Francisco, CA</p> | |
</div> | |
</div> | |
</div> | |
<div class="mt-8"> | |
<h4 class="font-medium text-gray-900 mb-4">Connect with me</h4> | |
<div class="flex space-x-4"> | |
<a href="#" class="h-10 w-10 rounded-full bg-gray-100 flex items-center justify-center text-gray-600 hover:bg-blue-100 hover:text-blue-500 transition"> | |
<i class="fab fa-linkedin-in"></i> | |
</a> | |
<a href="#" class="h-10 w-10 rounded-full bg-gray-100 flex items-center justify-center text-gray-600 hover:bg-gray-800 hover:text-white transition"> | |
<i class="fab fa-github"></i> | |
</a> | |
<a href="#" class="h-10 w-10 rounded-full bg-gray-100 flex items-center justify-center text-gray-600 hover:bg-blue-500 hover:text-white transition"> | |
<i class="fab fa-twitter"></i> | |
</a> | |
<a href="#" class="h-10 w-10 rounded-full bg-gray-100 flex items-center justify-center text-gray-600 hover:bg-red-500 hover:text-white transition"> | |
<i class="fab fa-youtube"></i> | |
</a> | |
</div> | |
</div> | |
</div> | |
</div> | |
</div> | |
</div> | |
</section> | |
<!-- Footer --> | |
<footer class="bg-gray-900 text-white py-8"> | |
<div class="max-w-6xl 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 gradient-text">John Doe</span> | |
<p class="text-gray-400 mt-1">Building digital experiences that matter.</p> | |
</div> | |
<div class="flex space-x-6"> | |
<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-github"></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 class="border-t border-gray-800 mt-8 pt-8 text-center text-gray-400 text-sm"> | |
<p>© 2023 John Doe. All rights reserved.</p> | |
</div> | |
</div> | |
</footer> | |
<script> | |
// Mobile menu toggle | |
document.getElementById('menu-btn').addEventListener('click', function() { | |
const menu = document.getElementById('mobile-menu'); | |
menu.classList.toggle('hidden'); | |
}); | |
// 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) { | |
// Close mobile menu if open | |
const mobileMenu = document.getElementById('mobile-menu'); | |
mobileMenu.classList.add('hidden'); | |
// Scroll to target | |
window.scrollTo({ | |
top: targetElement.offsetTop - 80, | |
behavior: 'smooth' | |
}); | |
} | |
}); | |
}); | |
// Add shadow to navbar on scroll | |
window.addEventListener('scroll', function() { | |
const nav = document.querySelector('nav'); | |
if (window.scrollY > 10) { | |
nav.classList.add('shadow-lg'); | |
} else { | |
nav.classList.remove('shadow-lg'); | |
} | |
}); | |
</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=andreaschandra/personal-page" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body> | |
</html> |