PRANIT_CHILBULE / projects.html
pranit144's picture
Upload 44 files
ff27fd8 verified
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Projects & Experience - Pranit Chilbule</title>
<link href="https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@400;500;700&family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet">
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
:root {
--bg-primary: #0d1117;
--bg-secondary: #010409;
--bg-card: #21262d;
--text-primary: #c9d1d9;
--text-secondary: rgba(201, 209, 217, 0.8);
--accent-blue: #58a6ff;
--accent-green: #10a37f;
--accent-purple: #a5b4fc;
--accent-orange: #fbbf24;
--header-bg: rgba(0, 0, 0, 0.8);
--border-color: #30363d;
--gradient-1: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
--gradient-2: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
--gradient-3: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);
}
body {
background-color: var(--bg-primary);
color: var(--text-primary);
font-family: 'Inter', sans-serif;
line-height: 1.6;
overflow-x: hidden;
}
/* Animated Background */
.animated-bg {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: -1;
opacity: 0.1;
}
.floating-shape {
position: absolute;
border-radius: 50%;
animation: float 20s infinite ease-in-out;
}
.shape-1 {
width: 300px;
height: 300px;
background: var(--gradient-1);
top: 10%;
left: 10%;
animation-delay: 0s;
}
.shape-2 {
width: 200px;
height: 200px;
background: var(--gradient-2);
top: 60%;
right: 10%;
animation-delay: 7s;
}
.shape-3 {
width: 150px;
height: 150px;
background: var(--gradient-3);
bottom: 20%;
left: 20%;
animation-delay: 14s;
}
@keyframes float {
0%, 100% { transform: translate(0, 0) rotate(0deg); }
33% { transform: translate(50px, -50px) rotate(120deg); }
66% { transform: translate(-30px, 30px) rotate(240deg); }
}
/* Header Styles */
header {
position: fixed;
top: 0;
left: 0;
width: 100%;
padding: 1rem 2rem;
background: var(--header-bg);
backdrop-filter: blur(20px);
z-index: 1000;
transition: all 0.3s ease;
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
header.scrolled {
background: rgba(0, 0, 0, 0.9);
}
nav {
display: flex;
justify-content: space-between;
align-items: center;
max-width: 1200px;
margin: 0 auto;
}
.logo {
font-family: 'Roboto Mono', monospace;
font-size: 1.5rem;
color: var(--text-primary);
text-decoration: none;
font-weight: 700;
transition: color 0.3s ease;
}
.logo:hover {
color: var(--accent-blue);
}
.nav-links {
display: flex;
gap: 2rem;
list-style: none;
}
.nav-links a {
color: var(--text-primary);
text-decoration: none;
font-weight: 500;
position: relative;
transition: color 0.3s ease;
padding: 0.5rem 0;
}
.nav-links a::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 0;
height: 2px;
background: var(--accent-blue);
transition: width 0.3s ease;
}
.nav-links a:hover::after,
.nav-links a.active::after {
width: 100%;
}
.nav-links a:hover,
.nav-links a.active {
color: var(--accent-blue);
}
/* Mobile Menu */
.menu-toggle {
display: none;
flex-direction: column;
cursor: pointer;
padding: 0.5rem;
}
.menu-toggle span {
height: 3px;
width: 25px;
background: var(--text-primary);
margin-bottom: 4px;
transition: all 0.3s ease;
}
.menu-toggle.active span:nth-child(1) {
transform: rotate(45deg) translate(5px, 5px);
}
.menu-toggle.active span:nth-child(2) {
opacity: 0;
}
.menu-toggle.active span:nth-child(3) {
transform: rotate(-45deg) translate(7px, -6px);
}
/* Main Content Styles */
main {
padding: 2rem;
max-width: 1200px;
margin: 80px auto 0;
}
section {
margin-bottom: 6rem;
}
h2 {
font-size: 3rem;
margin-bottom: 3rem;
color: var(--accent-blue);
text-align: center;
font-weight: 700;
position: relative;
}
h2::after {
content: '';
position: absolute;
bottom: -10px;
left: 50%;
transform: translateX(-50%);
width: 100px;
height: 4px;
background: var(--gradient-1);
border-radius: 2px;
}
/* Project Categories */
.project-categories {
display: flex;
justify-content: center;
gap: 1rem;
margin-bottom: 3rem;
flex-wrap: wrap;
}
.category-btn {
background: var(--bg-card);
border: 2px solid var(--border-color);
color: var(--text-primary);
padding: 0.75rem 1.5rem;
border-radius: 25px;
cursor: pointer;
transition: all 0.3s ease;
font-weight: 500;
}
.category-btn:hover,
.category-btn.active {
background: var(--accent-blue);
border-color: var(--accent-blue);
transform: translateY(-2px);
box-shadow: 0 5px 15px rgba(88, 166, 255, 0.4);
}
/* Project Cards */
.projects-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
gap: 2.5rem;
padding: 2rem 0;
}
.project-card {
background: var(--bg-card);
border-radius: 16px;
overflow: hidden;
box-shadow: 0 8px 30px rgba(0, 0, 0, 0.3);
transition: all 0.4s ease;
border: 1px solid var(--border-color);
position: relative;
}
.project-card::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 4px;
background: var(--gradient-1);
opacity: 0;
transition: opacity 0.3s ease;
}
.project-card:hover::before {
opacity: 1;
}
.project-card:hover {
transform: translateY(-10px);
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4);
border-color: var(--accent-blue);
}
.project-thumbnail {
position: relative;
padding-top: 56.25%;
background: var(--bg-secondary);
overflow: hidden;
}
.project-thumbnail img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.4s ease;
}
.project-card:hover .project-thumbnail img {
transform: scale(1.1);
}
.project-overlay {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.7);
display: flex;
align-items: center;
justify-content: center;
opacity: 0;
transition: opacity 0.3s ease;
}
.project-card:hover .project-overlay {
opacity: 1;
}
.project-status {
position: absolute;
top: 1rem;
right: 1rem;
background: var(--accent-green);
color: white;
padding: 0.5rem 1rem;
border-radius: 15px;
font-size: 0.8rem;
font-weight: 600;
}
.project-status.in-progress {
background: var(--accent-orange);
}
.project-content {
padding: 2rem;
}
.project-title {
font-size: 1.4rem;
color: var(--accent-blue);
margin-bottom: 1rem;
font-weight: 600;
}
.project-description {
color: var(--text-secondary);
margin-bottom: 1.5rem;
line-height: 1.7;
}
.tech-stack {
display: flex;
flex-wrap: wrap;
gap: 0.75rem;
margin-bottom: 1.5rem;
}
.tech-tag {
background: var(--bg-secondary);
color: var(--accent-green);
padding: 0.4rem 1rem;
border-radius: 20px;
font-size: 0.85rem;
font-weight: 500;
border: 1px solid rgba(16, 163, 127, 0.3);
transition: all 0.3s ease;
}
.tech-tag:hover {
background: var(--accent-green);
color: white;
transform: translateY(-2px);
}
.project-links {
display: flex;
gap: 1rem;
}
.project-links a {
color: var(--accent-blue);
text-decoration: none;
display: flex;
align-items: center;
gap: 0.5rem;
padding: 0.75rem 1.5rem;
border: 2px solid var(--accent-blue);
border-radius: 8px;
transition: all 0.3s ease;
font-weight: 500;
}
.project-links a:hover {
background: var(--accent-blue);
color: white;
transform: translateY(-2px);
}
/* Experience Timeline */
.timeline {
position: relative;
max-width: 100%;
margin: 4rem auto;
padding: 3rem 0;
}
.timeline::before {
content: '';
position: absolute;
left: 0;
right: 0;
top: 50%;
height: 3px;
background: var(--gradient-1);
box-shadow: 0 0 20px var(--accent-blue);
border-radius: 2px;
}
.timeline-container {
display: flex;
justify-content: space-between;
align-items: center;
gap: 2rem;
overflow-x: auto;
padding: 3rem 1rem;
scroll-snap-type: x mandatory;
-ms-overflow-style: none;
scrollbar-width: none;
}
.timeline-container::-webkit-scrollbar {
display: none;
}
.timeline-item {
min-width: 380px;
max-width: 380px;
scroll-snap-align: center;
position: relative;
}
.timeline-item:nth-child(odd) {
transform: translateY(-40px);
}
.timeline-item:nth-child(even) {
transform: translateY(40px);
}
.timeline-content {
background: var(--bg-card);
padding: 2rem;
border-radius: 16px;
border: 1px solid var(--border-color);
backdrop-filter: blur(10px);
box-shadow: 0 8px 30px rgba(0, 0, 0, 0.3);
transition: all 0.4s ease;
position: relative;
}
.timeline-content::before {
content: '';
position: absolute;
width: 24px;
height: 24px;
background: var(--accent-blue);
border-radius: 50%;
left: 50%;
transform: translateX(-50%);
border: 4px solid var(--bg-primary);
box-shadow: 0 0 20px var(--accent-blue);
}
.timeline-item:nth-child(odd) .timeline-content::before {
bottom: -52px;
}
.timeline-item:nth-child(even) .timeline-content::before {
top: -52px;
}
.timeline-content:hover {
transform: translateY(-10px);
box-shadow: 0 15px 40px rgba(0, 0, 0, 0.4);
border-color: var(--accent-blue);
}
.timeline-date {
display: inline-block;
padding: 0.75rem 1.5rem;
background: var(--gradient-1);
border-radius: 25px;
color: white;
font-weight: 700;
margin-bottom: 1rem;
font-size: 0.9rem;
}
.timeline-location {
color: var(--text-secondary);
font-size: 0.95rem;
margin-bottom: 0.5rem;
display: flex;
align-items: center;
gap: 0.5rem;
}
.timeline-location::before {
content: '📍';
font-size: 1.1rem;
}
.timeline-role {
color: var(--accent-blue);
font-size: 1.2rem;
margin-bottom: 1rem;
font-weight: 600;
}
.timeline-content ul {
list-style: none;
margin-top: 1rem;
}
.timeline-content li {
position: relative;
padding-left: 2rem;
margin-bottom: 1rem;
color: var(--text-secondary);
line-height: 1.6;
}
.timeline-content li::before {
content: '→';
position: absolute;
left: 0;
color: var(--accent-green);
font-weight: bold;
font-size: 1.2rem;
}
/* Timeline Navigation */
.timeline-nav {
display: flex;
justify-content: center;
gap: 1rem;
margin-top: 3rem;
}
.timeline-nav button {
background: var(--bg-card);
border: 2px solid var(--border-color);
color: var(--text-primary);
padding: 0.75rem 1.5rem;
border-radius: 12px;
cursor: pointer;
transition: all 0.3s ease;
font-size: 1.1rem;
font-weight: 600;
}
.timeline-nav button:hover {
background: var(--accent-blue);
border-color: var(--accent-blue);
transform: translateY(-2px);
box-shadow: 0 5px 15px rgba(88, 166, 255, 0.4);
}
/* Skills Section */
.skills-section {
background: var(--bg-card);
border-radius: 20px;
padding: 3rem;
margin: 4rem 0;
border: 1px solid var(--border-color);
}
.skills-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 2rem;
margin-top: 2rem;
}
.skill-category {
text-align: center;
}
.skill-category h4 {
color: var(--accent-blue);
margin-bottom: 1rem;
font-size: 1.2rem;
}
.skill-list {
display: flex;
flex-wrap: wrap;
gap: 0.75rem;
justify-content: center;
}
.skill-item {
background: var(--bg-secondary);
color: var(--text-primary);
padding: 0.5rem 1rem;
border-radius: 15px;
font-size: 0.9rem;
transition: all 0.3s ease;
}
.skill-item:hover {
background: var(--accent-green);
color: white;
transform: translateY(-2px);
}
/* Contact Section */
.contact-section {
text-align: center;
background: var(--gradient-1);
border-radius: 20px;
padding: 4rem 2rem;
margin: 4rem 0;
color: white;
}
.contact-section h3 {
font-size: 2rem;
margin-bottom: 1rem;
}
.contact-section p {
font-size: 1.1rem;
margin-bottom: 2rem;
opacity: 0.9;
}
.contact-buttons {
display: flex;
gap: 1rem;
justify-content: center;
flex-wrap: wrap;
}
.contact-btn {
background: white;
color: var(--bg-primary);
padding: 1rem 2rem;
border-radius: 12px;
text-decoration: none;
font-weight: 600;
transition: all 0.3s ease;
display: flex;
align-items: center;
gap: 0.5rem;
}
.contact-btn:hover {
transform: translateY(-3px);
box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}
/* Animations */
.fade-in {
opacity: 0;
transform: translateY(30px);
transition: opacity 0.8s ease, transform 0.8s ease;
}
.fade-in.visible {
opacity: 1;
transform: translateY(0);
}
.slide-in-left {
opacity: 0;
transform: translateX(-50px);
transition: opacity 0.8s ease, transform 0.8s ease;
}
.slide-in-left.visible {
opacity: 1;
transform: translateX(0);
}
.slide-in-right {
opacity: 0;
transform: translateX(50px);
transition: opacity 0.8s ease, transform 0.8s ease;
}
.slide-in-right.visible {
opacity: 1;
transform: translateX(0);
}
/* Responsive Design */
@media (max-width: 768px) {
.menu-toggle {
display: flex;
}
.nav-links {
display: none;
position: fixed;
top: 80px;
left: 0;
width: 100%;
background: var(--bg-card);
padding: 2rem;
flex-direction: column;
align-items: center;
z-index: 1000;
border-top: 1px solid var(--border-color);
}
.nav-links.active {
display: flex;
}
h2 {
font-size: 2.5rem;
}
.projects-grid {
grid-template-columns: 1fr;
}
.timeline-item {
min-width: 300px;
transform: none !important;
}
.project-categories {
justify-content: flex-start;
overflow-x: auto;
padding-bottom: 1rem;
}
.contact-buttons {
flex-direction: column;
align-items: center;
}
.skills-grid {
grid-template-columns: 1fr;
}
}
@media (max-width: 480px) {
main {
padding: 1rem;
}
.timeline-item {
min-width: 280px;
}
.project-card {
margin-bottom: 1rem;
}
}
</style>
</head>
<body>
<!-- Animated Background -->
<div class="animated-bg">
<div class="floating-shape shape-1"></div>
<div class="floating-shape shape-2"></div>
<div class="floating-shape shape-3"></div>
</div>
<header>
<nav>
<a href="index.html" class="logo">Pranit Chilbule</a>
<div class="menu-toggle" onclick="toggleMenu()">
<span></span>
<span></span>
<span></span>
</div>
<ul class="nav-links">
<li><a href="index.html">Home</a></li>
<li><a href="about.html">About</a></li>
<li><a href="#" class="active">Projects</a></li>
<li><a href="achievements.html">Achievement</a></li>
<li><a href="contact.html">Contact</a></li>
</ul>
</nav>
</header>
<main>
<!-- Projects Section -->
<section id="projects">
<h2 class="fade-in">Featured Projects</h2>
<!-- Project Categories -->
<div class="project-categories fade-in">
<button class="category-btn active" onclick="filterProjects('all')">All Projects</button>
<button class="category-btn" onclick="filterProjects('ai-ml')">AI/ML</button>
<button class="category-btn" onclick="filterProjects('web')">Web Development</button>
<button class="category-btn" onclick="filterProjects('iot')">IoT</button>
</div>
<div class="projects-grid">
<!-- Project 1: Inspect.AI -->
<article class="project-card fade-in" data-category="ai-ml">
<div class="project-thumbnail">
<img src="https://images.unsplash.com/photo-1555949963-aa79dcee981c?w=600&h=400&fit=crop" alt="AI Inspection System" loading="lazy">
<div class="project-overlay">
<div style="color: white; font-weight: 600;">View Details</div>
</div>
<div class="project-status">Completed</div>
</div>
<div class="project-content">
<h3 class="project-title">Inspect.AI - Institute Inspection System</h3>
<p class="project-description">
Advanced AI-powered inspection system utilizing CNNs, YOLOv8, and image segmentation for comprehensive institute assessment. Features OCR document processing, automated report generation, and seamless ERP integration with 95% accuracy in defect detection.
</p>
<div class="tech-stack">
<span class="tech-tag">Flask</span>
<span class="tech-tag">YOLOv8</span>
<span class="tech-tag">Deep Learning</span>
<span class="tech-tag">Computer Vision</span>
<span class="tech-tag">NLP</span>
<span class="tech-tag">Gemini API</span>
<span class="tech-tag">OCR</span>
</div>
<div class="project-links">
<a href="https://github.com/pranit144/inspect-ai" target="_blank">
<svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
<path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/>
</svg>
GitHub
</a>
<a href="#" target="_blank">
<svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
<path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"/>
</svg>
Live Demo
</a>
</div>
</div>
</article>
<!-- Project 2: Ground Water Level Predictor -->
<article class="project-card fade-in" data-category="ai-ml">
<div class="project-thumbnail">
<img src="https://images.unsplash.com/photo-1569163139394-de4e4f43e4e3?w=600&h=400&fit=crop" alt="Water Level Prediction" loading="lazy">
<div class="project-overlay">
<div style="color: white; font-weight: 600;">View Details</div>
</div>
<div class="project-status">Completed</div>
</div>
<div class="project-content">
<h3 class="project-title">Ground Water Level Predictor</h3>
<p class="project-description">
Comprehensive web application for groundwater level estimation using machine learning algorithms. Features geospatial analysis, time-series forecasting, and achieved 90% accuracy using XGBoost and Prophet models with interactive visualization dashboard.
</p>
<div class="tech-stack">
<span class="tech-tag">Python</span>
<span class="tech-tag">Flask</span>
<span class="tech-tag">XGBoost</span>
<span class="tech-tag">Prophet</span>
<span class="tech-tag">Pandas</span>
<span class="tech-tag">Plotly</span>
<span class="tech-tag">Geospatial Analysis</span>
</div>
<div class="project-links">
<a href="#" target="_blank">
<svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
<path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/>
</svg>
GitHub
</a>
<a href="#" target="_blank">
<svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
<path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"/>
</svg>
Live Demo
</a>
</div>
</div>
</article>
<!-- Project 3: Enhanced Plant Disease Detection -->
<article class="project-card fade-in" data-category="iot">
<div class="project-thumbnail">
<img src="https://images.unsplash.com/photo-1416879595882-3373a0480b5b?w=600&h=400&fit=crop" alt="Plant Disease Detection System" loading="lazy">
<div class="project-overlay">
<div style="color: white; font-weight: 600;">View Details</div>
</div>
<div class="project-status">Completed</div>
</div>
<div class="project-content">
<h3 class="project-title">Enhanced Plant Disease Detection</h3>
<p class="project-description">
IoT-based agricultural solution combining deep learning and hardware automation for real-time crop disease detection. Features automated pesticide mixing system, smart resource management, and achieved 92% detection accuracy with reduced false positives.
</p>
<div class="tech-stack">
<span class="tech-tag">IoT</span>
<span class="tech-tag">Deep Learning</span>
<span class="tech-tag">Computer Vision</span>
<span class="tech-tag">Arduino</span>
<span class="tech-tag">Raspberry Pi</span>
<span class="tech-tag">Python</span>
<span class="tech-tag">Sensors</span>
</div>
<div class="project-links">
<a href="#" target="_blank">
<svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
<path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/>
</svg>
GitHub
</a>
<a href="#" target="_blank">
<svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
<path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"/>
</svg>
Live Demo
</a>
</div>
</div>
</article>
<!-- Project 4: E-Commerce Platform -->
<article class="project-card fade-in" data-category="web">
<div class="project-thumbnail">
<img src="https://images.unsplash.com/photo-1563013544-824ae1b704d3?w=600&h=400&fit=crop" alt="E-Commerce Platform" loading="lazy">
<div class="project-overlay">
<div style="color: white; font-weight: 600;">View Details</div>
</div>
<div class="project-status">Completed</div>
</div>
<div class="project-content">
<h3 class="project-title">Modern E-Commerce Platform</h3>
<p class="project-description">
Full-stack e-commerce solution with responsive design, payment integration, inventory management, and real-time analytics. Features secure authentication, order tracking, and optimized performance for high-traffic scenarios.
</p>
<div class="tech-stack">
<span class="tech-tag">React</span>
<span class="tech-tag">Node.js</span>
<span class="tech-tag">MongoDB</span>
<span class="tech-tag">Express</span>
<span class="tech-tag">Stripe API</span>
<span class="tech-tag">Redux</span>
<span class="tech-tag">JWT</span>
</div>
<div class="project-links">
<a href="#" target="_blank">
<svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
<path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/>
</svg>
GitHub
</a>
<a href="#" target="_blank">
<svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
<path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"/>
</svg>
Live Demo
</a>
</div>
</div>
</article>
<!-- Project 5: Smart Home Automation -->
<article class="project-card fade-in" data-category="iot">
<div class="project-thumbnail">
<img src="https://images.unsplash.com/photo-1558618666-fcd25c85cd64?w=600&h=400&fit=crop" alt="Smart Home System" loading="lazy">
<div class="project-overlay">
<div style="color: white; font-weight: 600;">View Details</div>
</div>
<div class="project-status in-progress">In Progress</div>
</div>
<div class="project-content">
<h3 class="project-title">Smart Home Automation System</h3>
<p class="project-description">
Comprehensive IoT solution for home automation featuring voice control, mobile app integration, energy monitoring, and AI-driven optimization. Implements machine learning for predictive analytics and energy efficiency.
</p>
<div class="tech-stack">
<span class="tech-tag">IoT</span>
<span class="tech-tag">Arduino</span>
<span class="tech-tag">React Native</span>
<span class="tech-tag">Firebase</span>
<span class="tech-tag">ML</span>
<span class="tech-tag">Voice Recognition</span>
<span class="tech-tag">WiFi</span>
</div>
<div class="project-links">
<a href="#" target="_blank">
<svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
<path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/>
</svg>
GitHub
</a>
<a href="#" target="_blank">
<svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
<path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"/>
</svg>
Preview
</a>
</div>
</div>
</article>
<!-- Project 6: Data Visualization Dashboard -->
<article class="project-card fade-in" data-category="ai-ml">
<div class="project-thumbnail">
<img src="https://images.unsplash.com/photo-1551288049-bebda4e38f71?w=600&h=400&fit=crop" alt="Data Visualization Dashboard" loading="lazy">
<div class="project-overlay">
<div style="color: white; font-weight: 600;">View Details</div>
</div>
<div class="project-status">Completed</div>
</div>
<div class="project-content">
<h3 class="project-title">Interactive Data Analytics Dashboard</h3>
<p class="project-description">
Advanced analytics platform with real-time data processing, interactive visualizations, and predictive modeling capabilities. Features custom charts, automated reporting, and machine learning integration for business intelligence.
</p>
<div class="tech-stack">
<span class="tech-tag">Python</span>
<span class="tech-tag">Dash</span>
<span class="tech-tag">Plotly</span>
<span class="tech-tag">Pandas</span>
<span class="tech-tag">SQL</span>
<span class="tech-tag">Machine Learning</span>
<span class="tech-tag">Docker</span>
</div>
<div class="project-links">
<a href="#" target="_blank">
<svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
<path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/>
</svg>
GitHub
</a>
<a href="#" target="_blank">
<svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
<path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"/>
</svg>
Live Demo
</a>
</div>
</div>
</article>
</div>
</section>
<!-- Experience Timeline -->
<section id="experience">
<h2 class="fade-in">Professional Experience</h2>
<div class="timeline">
<div class="timeline-container">
<!-- Passion Infotech -->
<div class="timeline-item fade-in">
<div class="timeline-content">
<div class="timeline-date">August 2024-November 2024 </div>
<div class="timeline-location">Pune, India</div>
<h3 class="timeline-role">AI Engineer - Passion Infotech Private Limited</h3>
<ul>
<li>Developed a generative AI system using GANs and transformers for advanced content creation</li>
<li>Implemented mood-driven audio-visual enhancements with 85% user satisfaction</li>
<li>Secured ₹2.5M industry funding for innovation projects</li>
<li>Expanded RAG framework expertise and deployed production-ready AI solutions</li>
<li>Led cross-functional team of 5 engineers in AI product development</li>
</ul>
</div>
</div>
<!-- Softgrowth Infotech -->
<div class="timeline-item fade-in">
<div class="timeline-content">
<div class="timeline-date">July 2024</div>
<div class="timeline-location">Chandrapur, India</div>
<h3 class="timeline-role">Summer Intern - Softgrowth Infotech</h3>
<ul>
<li>Developed responsive website frontend using HTML5, CSS3, and JavaScript ES6</li>
<li>Enhanced user experience and improved page load performance by 25%</li>
<li>Ensured cross-browser compatibility and mobile responsiveness</li>
<li>Collaborated with design team to implement pixel-perfect UI components</li>
<li>Optimized code for better SEO performance and accessibility standards</li>
</ul>
</div>
</div>
<!-- Acmegrade -->
<div class="timeline-item fade-in">
<div class="timeline-content">
<div class="timeline-date">April 2023 - May 2023</div>
<div class="timeline-location">Remote</div>
<h3 class="timeline-role">Data Science Trainee - Acmegrade</h3>
<ul>
<li>Built spam classification model achieving 94% accuracy using ML techniques</li>
<li>Developed NLP chatbot with advanced data preprocessing and sentiment analysis</li>
<li>Implemented feature engineering pipelines using Pandas and NumPy</li>
<li>Analyzed large datasets and created predictive models for business insights</li>
<li>Participated in end-to-end ML project lifecycle from data collection to deployment</li>
</ul>
</div>
</div>
</div>
<div class="timeline-nav">
<button onclick="scrollTimeline('left')" aria-label="Previous"></button>
<button onclick="scrollTimeline('right')" aria-label="Next"></button>
</div>
</div>
</section>
<!-- Skills Section -->
<section id="skills">
<div class="skills-section fade-in">
<h2>Technical Skills</h2>
<div class="skills-grid">
<div class="skill-category">
<h4>Programming Languages</h4>
<div class="skill-list">
<span class="skill-item">Python</span>
<span class="skill-item">JavaScript</span>
<span class="skill-item">Java</span>
<span class="skill-item">C++</span>
<span class="skill-item">SQL</span>
<span class="skill-item">R</span>
</div>
</div>
<div class="skill-category">
<h4>AI/ML Technologies</h4>
<div class="skill-list">
<span class="skill-item">TensorFlow</span>
<span class="skill-item">PyTorch</span>
<span class="skill-item">Scikit-learn</span>
<span class="skill-item">OpenCV</span>
<span class="skill-item">YOLO</span>
<span class="skill-item">Transformers</span>
<span class="skill-item">GANs</span>
</div>
</div>
<div class="skill-category">
<h4>Web Technologies</h4>
<div class="skill-list">
<span class="skill-item">React</span>
<span class="skill-item">Node.js</span>
<span class="skill-item">Flask</span>
<span class="skill-item">Django</span>
<span class="skill-item">MongoDB</span>
<span class="skill-item">Express</span>
</div>
</div>
<div class="skill-category">
<h4>Tools & Platforms</h4>
<div class="skill-list">
<span class="skill-item">Git</span>
<span class="skill-item">Docker</span>
<span class="skill-item">AWS</span>
<span class="skill-item">Google Cloud</span>
<span class="skill-item">Jupyter</span>
<span class="skill-item">VS Code</span>
</div>
</div>
</div>
</div>
</section>
<!-- Contact Section -->
<section id="contact">
<div class="contact-section fade-in">
<h3>Let's Work Together</h3>
<p>Ready to bring your ideas to life? Let's discuss how we can collaborate on your next project.</p>
<div class="contact-buttons">
<a href="mailto:[email protected]" class="contact-btn">
<svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
<path d="M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.89 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z"/>
</svg>
Email Me
</a>
<a href="https://linkedin.com/in/pranit144" class="contact-btn">
<svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
<path d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"/>
</svg>
LinkedIn
</a>
<a href="https://github.com/pranit144" class="contact-btn">
<svg width="20" height="20" fill="currentColor" viewBox="0 0 24 24">
<path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/>
</svg>
GitHub
</a>
</div>
</div>
</section>
</main>
<script>
// Header scroll effect
window.addEventListener('scroll', () => {
const header = document.querySelector('header');
if (window.scrollY > 100) {
header.classList.add('scrolled');
} else {
header.classList.remove('scrolled');
}
});
// Mobile menu toggle
function toggleMenu() {
const navLinks = document.querySelector('.nav-links');
const menuToggle = document.querySelector('.menu-toggle');
navLinks.classList.toggle('active');
menuToggle.classList.toggle('active');
}
// Project filtering
function filterProjects(category) {
const cards = document.querySelectorAll('.project-card');
const buttons = document.querySelectorAll('.category-btn');
// Update active button
buttons.forEach(btn => btn.classList.remove('active'));
event.target.classList.add('active');
// Filter cards
cards.forEach(card => {
if (category === 'all' || card.dataset.category === category) {
card.style.display = 'block';
card.style.animation = 'fadeIn 0.5s ease forwards';
} else {
card.style.display = 'none';
}
});
}
// Timeline navigation
function scrollTimeline(direction) {
const container = document.querySelector('.timeline-container');
const scrollAmount = 400;
if (direction === 'left') {
container.scrollBy({ left: -scrollAmount, behavior: 'smooth' });
} else {
container.scrollBy({ left: scrollAmount, behavior: 'smooth' });
}
}
// Intersection Observer for animations
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);
// Observe all elements with animation classes
document.addEventListener('DOMContentLoaded', () => {
const animatedElements = document.querySelectorAll('.fade-in, .slide-in-left, .slide-in-right');
animatedElements.forEach(el => observer.observe(el));
});
// Smooth scrolling for navigation links
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener('click', function (e) {
e.preventDefault();
const target = document.querySelector(this.getAttribute('href'));
if (target) {
const headerHeight = document.querySelector('header').offsetHeight;
const targetPosition = target.offsetTop - headerHeight - 20;
window.scrollTo({
top: targetPosition,
behavior: 'smooth'
});
// Close mobile menu if open
const navLinks = document.querySelector('.nav-links');
const menuToggle = document.querySelector('.menu-toggle');
navLinks.classList.remove('active');
menuToggle.classList.remove('active');
}
});
});
// Typing animation for hero section
function typeWriter(element, text, speed = 100) {
let i = 0;
element.innerHTML = '';
function type() {
if (i < text.length) {
element.innerHTML += text.charAt(i);
i++;
setTimeout(type, speed);
}
}
type();
}
// Initialize typing animation
window.addEventListener('load', () => {
const heroTitle = document.querySelector('.hero-title');
if (heroTitle) {
typeWriter(heroTitle, 'AI Engineer & Full-Stack Developer', 80);
}
});
// Parallax effect for hero section
window.addEventListener('scroll', () => {
const scrolled = window.pageYOffset;
const hero = document.querySelector('.hero');
if (hero) {
hero.style.transform = `translateY(${scrolled * 0.5}px)`;
}
});
// Project card hover effects
document.querySelectorAll('.project-card').forEach(card => {
card.addEventListener('mouseenter', function() {
this.style.transform = 'translateY(-10px)';
});
card.addEventListener('mouseleave', function() {
this.style.transform = 'translateY(0)';
});
});
// Skills animation on scroll
const skillItems = document.querySelectorAll('.skill-item');
const skillObserver = new IntersectionObserver((entries) => {
entries.forEach((entry, index) => {
if (entry.isIntersecting) {
setTimeout(() => {
entry.target.style.opacity = '1';
entry.target.style.transform = 'translateY(0)';
}, index * 100);
}
});
});
skillItems.forEach(item => {
item.style.opacity = '0';
item.style.transform = 'translateY(20px)';
item.style.transition = 'all 0.5s ease';
skillObserver.observe(item);
});
// Dynamic year update
const currentYear = new Date().getFullYear();
const yearElements = document.querySelectorAll('.current-year');
yearElements.forEach(el => el.textContent = currentYear);
// Form validation (if contact form exists)
const contactForm = document.querySelector('#contact-form');
if (contactForm) {
contactForm.addEventListener('submit', function(e) {
e.preventDefault();
// Add form validation logic here
alert('Thank you for your message! I will get back to you soon.');
});
}
// Performance optimization - lazy loading for images
if ('IntersectionObserver' in window) {
const imageObserver = new IntersectionObserver((entries, observer) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
const img = entry.target;
img.src = img.dataset.src || img.src;
img.classList.remove('lazy');
observer.unobserve(img);
}
});
});
document.querySelectorAll('img[loading="lazy"]').forEach(img => {
imageObserver.observe(img);
});
}
// Active navigation highlighting
window.addEventListener('scroll', () => {
const sections = document.querySelectorAll('section[id]');
const navLinks = document.querySelectorAll('.nav-links a');
let current = '';
sections.forEach(section => {
const sectionTop = section.offsetTop;
const sectionHeight = section.clientHeight;
if (scrollY >= (sectionTop - 200)) {
current = section.getAttribute('id');
}
});
navLinks.forEach(link => {
link.classList.remove('active');
if (link.getAttribute('href') === '#' + current) {
link.classList.add('active');
}
});
});
// Timeline scroll indicators
const timelineContainer = document.querySelector('.timeline-container');
if (timelineContainer) {
timelineContainer.addEventListener('scroll', () => {
const scrollLeft = timelineContainer.scrollLeft;
const maxScroll = timelineContainer.scrollWidth - timelineContainer.clientWidth;
const scrollPercentage = (scrollLeft / maxScroll) * 100;
// Update navigation buttons state
const leftBtn = document.querySelector('.timeline-nav button:first-child');
const rightBtn = document.querySelector('.timeline-nav button:last-child');
if (leftBtn && rightBtn) {
leftBtn.disabled = scrollLeft === 0;
rightBtn.disabled = scrollLeft >= maxScroll - 1;
}
});
}
// Easter egg - Konami code
let konamiCode = [];
const konamiSequence = [38, 38, 40, 40, 37, 39, 37, 39, 66, 65];
document.addEventListener('keydown', (e) => {
konamiCode.push(e.keyCode);
if (konamiCode.length > konamiSequence.length) {
konamiCode.shift();
}
if (konamiCode.toString() === konamiSequence.toString()) {
document.body.style.animation = 'rainbow 2s infinite';
setTimeout(() => {
document.body.style.animation = '';
}, 5000);
console.log('🎉 Easter egg activated! Welcome to the matrix!');
}
});
// Add CSS for rainbow animation
const style = document.createElement('style');
style.textContent = `
@keyframes rainbow {
0% { filter: hue-rotate(0deg); }
100% { filter: hue-rotate(360deg); }
}
`;
document.head.appendChild(style);
// Console welcome message
console.log('%c Welcome to Pranit Chilbule\'s Portfolio! ', 'background: linear-gradient(45deg, #667eea 0%, #764ba2 100%); color: white; padding: 10px; border-radius: 5px; font-size: 16px; font-weight: bold;');
console.log('%c Feel free to explore the code and reach out if you have any questions! ', 'color: #667eea; font-size: 14px;');
</script>
<!-- Additional CSS for enhanced animations and responsive design -->
<style>
/* Ensure smooth transitions for all interactive elements */
* {
transition-duration: 0.3s;
}
/* Enhanced project card animations */
.project-card {
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.project-card:hover {
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}
/* Improved timeline navigation */
.timeline-nav button:disabled {
opacity: 0.5;
cursor: not-allowed;
}
/* Enhanced mobile responsiveness */
@media (max-width: 768px) {
.timeline-container {
scroll-snap-type: x mandatory;
}
.timeline-item {
scroll-snap-align: start;
}
.skills-grid {
grid-template-columns: 1fr;
gap: 1.5rem;
}
}
/* Loading animation for lazy images */
img.lazy {
opacity: 0;
transition: opacity 0.3s;
}
img.lazy.loaded {
opacity: 1;
}
/* Active navigation styling */
.nav-links a.active {
color: var(--primary-color);
border-bottom: 2px solid var(--primary-color);
}
/* Print styles */
@media print {
.nav-links,
.menu-toggle,
.project-links,
.contact-buttons {
display: none;
}
.project-card,
.timeline-item {
break-inside: avoid;
}
}
/* High contrast mode support */
@media (prefers-contrast: high) {
:root {
--text-color: #000;
--background-color: #fff;
--primary-color: #0000ff;
}
}
/* Reduced motion for accessibility */
@media (prefers-reduced-motion: reduce) {
*,
*::before,
*::after {
animation-duration: 0.01ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.01ms !important;
}
}
</style>
</body>
</html>