1
/
12
Welcome to AI Engineering Bootcamp
Your Journey to AI Mastery Starts Here
Ruangguru Engineering Academy+
What is Artificial Intelligence?
AI adalah teknologi yang memungkinkan mesin untuk belajar, berpikir, dan membuat keputusan seperti manusia
$200B+
AI Market Size by 2030
Why Choose AI Engineering?
-
High Demand:
AI Engineers are among the most sought-after professionals
-
Competitive Salary:
Average salary $120K - $200K+ globally
-
Innovation Impact:
Build solutions that change the world
-
Future-Proof Career:
AI is the technology of tomorrow
-
Creative Problem Solving:
Combine technical skills with creativity
Your 2-Month Learning Journey
1-2
Week 1-2
Python Fundamentals, Vibe Coding & n8n
3-4
Week 3-4
Machine Learning & Deep Learning
5-6
Week 5-6
LLM, Prompt Engineering, RAG
7
Week 7
Visual Models, Agentic AI
8
Week 8
Final Project & Soft Skills
Amazing Projects You'll Learn
-
Machine Learning Models:
Predict and classify real-world data with scikit-learn
-
Deep Learning Applications:
Build neural networks with PyTorch and TensorFlow
-
LLM Applications:
Create chatbots, RAG systems, and AI assistants with LangChain
-
Computer Vision Apps:
Image recognition, object detection, and visual models
-
Agentic AI Systems:
Multi-agent systems and autonomous AI workflows
-
Final Portfolio Project:
End-to-end AI application showcasing your skills
Tools You'll Learn
PY
Python
Core Programming Language
N8
n8n
Workflow Automation
PT
PyTorch
Deep Learning Framework
HF
Hugging Face
LLM & Transformers
LC
LangChain
RAG & LLM Applications
CV
Computer Vision
Image & Video Models
Success Mindset for AI Mastery
-
Growth Mindset:
Embrace challenges as learning opportunities
-
Consistent Practice:
Code every day, even if just 30 minutes
-
Community Learning:
Collaborate and learn from peers
-
Project-Based Learning:
Build to learn, don't just study theory
-
Stay Curious:
AI evolves rapidly - keep exploring
-
Persistence:
Every expert was once a beginner
Your Learning Support System
EI
Expert Instructors
Guidance from experienced AI practitioners and industry experts
HM
Hands-on Materials
Google Colab Notebooks
MS
Mentoring Sessions
Personal Guidance
PR
Project Reviews
Feedback & Improvement
AI Applications Changing the World
-
Healthcare:
Medical diagnosis, drug discovery, personalized treatment
-
Transportation:
Autonomous vehicles, traffic optimization
-
Finance:
Fraud detection, algorithmic trading, risk assessment
-
Entertainment:
Content recommendation, game AI, creative tools
-
Education:
Personalized learning, intelligent tutoring systems
-
Climate:
Weather prediction, energy optimization, sustainability
Career Paths After This Bootcamp
AE
AI Engineer
Build AI systems
DS
Data Scientist
Extract insights from data
ML
ML Engineer
Deploy ML models
CV
Computer Vision
Image & video analysis
LL
LLM Developer
Build applications with large language models
EN
AI Entrepreneur
Start your AI company
Your Commitment to Success
-
Attend all sessions:
Every class builds upon the previous one
-
Complete all projects:
Hands-on practice is crucial for mastery
-
Participate actively:
Ask questions, engage in discussions
-
Practice consistently:
Dedicate time daily for coding practice
-
Build your portfolio:
Showcase your projects on GitHub
-
Network with peers:
Build lasting professional relationships
Ready to Transform Your Future?
Your AI Journey Starts NOW!
Next Session:
19 Januari 2026 - Python Basics
"The best time to plant a tree was 20 years ago.
The second best time is now."
Let's build the future together!
<!doctype html>
<html lang="id">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>AI Application Bootcamp - Onboarding & Motivation</title>
<meta name="robots" content="noindex, follow" />
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Inter', 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
background: #0a0a0a;
color: #e2e8f0;
overflow-x: hidden;
}
.presentation-container {
width: 100vw;
min-height: 100vh;
position: relative;
background: radial-gradient(circle at top right, rgba(59, 130, 246, 0.1), transparent 50%), radial-gradient(circle at bottom left, rgba(139, 92, 246, 0.1), transparent 50%),
linear-gradient(135deg, rgba(15, 23, 42, 0.95) 0%, rgba(30, 41, 59, 0.95) 100%);
}
.slide {
width: 100%;
min-height: 100vh;
display: none;
padding: 60px;
position: absolute;
top: 0;
left: 0;
background: transparent;
animation: slideIn 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
overflow-y: auto;
}
.slide.active {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
position: relative;
}
.slide::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: linear-gradient(90deg, #3b82f6, #8b5cf6, #06b6d4);
opacity: 0.7;
}
@keyframes slideIn {
from {
opacity: 0;
transform: scale(0.95) translateY(20px);
}
to {
opacity: 1;
transform: scale(1) translateY(0);
}
}
.slide h1 {
font-size: 4rem;
font-weight: 800;
margin-bottom: 30px;
text-align: center;
color: #f8fafc;
letter-spacing: -0.03em;
line-height: 1.1;
text-shadow: 0 2px 10px rgba(59, 130, 246, 0.3);
background: linear-gradient(135deg, #f8fafc 0%, #94a3b8 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}
.slide h2 {
font-size: 2.8rem;
font-weight: 700;
margin-bottom: 25px;
text-align: center;
color: #e2e8f0;
letter-spacing: -0.02em;
opacity: 0.9;
}
.slide h3 {
font-size: 2.2rem;
font-weight: 600;
margin-bottom: 20px;
color: #94a3b8;
text-align: center;
}
.slide p,
.slide li {
font-size: 1.4rem;
line-height: 1.7;
margin-bottom: 15px;
text-align: center;
max-width: 900px;
color: #cbd5e1;
}
.slide ul {
text-align: left;
max-width: 800px;
list-style: none;
padding-left: 0;
}
.slide li {
margin-bottom: 25px;
padding-left: 35px;
position: relative;
font-weight: 400;
text-align: left;
transition: transform 0.3s ease;
}
.slide li:hover {
transform: translateX(10px);
}
.slide li::before {
content: '→';
position: absolute;
left: 10px;
top: 0;
color: #3b82f6;
font-weight: bold;
font-size: 1.5rem;
transition: transform 0.3s ease;
}
.slide li:hover::before {
transform: translateX(5px);
}
.slide strong {
color: #f8fafc;
font-weight: 600;
background: linear-gradient(135deg, #3b82f6, #8b5cf6);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}
.navigation {
position: fixed;
bottom: 40px;
left: 50%;
transform: translateX(-50%);
display: flex;
gap: 20px;
z-index: 100;
}
.nav-btn {
padding: 16px 32px;
background: rgba(255, 255, 255, 0.05);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 16px;
color: #e2e8f0;
cursor: pointer;
font-size: 1.1rem;
font-weight: 500;
transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
backdrop-filter: blur(10px);
}
.nav-btn:hover {
background: rgba(59, 130, 246, 0.2);
color: white;
border-color: #3b82f6;
transform: translateY(-3px) scale(1.05);
box-shadow: 0 10px 20px -5px rgba(59, 130, 246, 0.3);
}
.slide-counter {
position: fixed;
top: 40px;
right: 40px;
background: rgba(255, 255, 255, 0.05);
color: #e2e8f0;
padding: 14px 24px;
border-radius: 16px;
font-size: 1rem;
font-weight: 500;
backdrop-filter: blur(10px);
border: 1px solid rgba(255, 255, 255, 0.1);
transition: all 0.3s ease;
}
.slide-counter:hover {
background: rgba(59, 130, 246, 0.1);
border-color: #3b82f6;
transform: translateY(-2px);
}
.content-wrapper {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 80px;
max-width: 1600px;
margin: 0 auto;
padding: 0 60px;
}
.content-left {
flex: 1;
max-width: 700px;
}
.content-right {
flex: 1;
max-width: 700px;
}
.timeline {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 30px;
margin-top: 40px;
}
.timeline-item {
background: rgba(255, 255, 255, 0.03);
padding: 35px 30px;
border-radius: 24px;
text-align: center;
border: 1px solid rgba(255, 255, 255, 0.05);
transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
backdrop-filter: blur(10px);
}
.timeline-item:hover {
transform: translateY(-10px) scale(1.02);
background: rgba(59, 130, 246, 0.08);
border-color: #3b82f6;
box-shadow: 0 20px 40px -10px rgba(59, 130, 246, 0.2);
}
.timeline-item .icon {
width: 70px;
height: 70px;
background: linear-gradient(135deg, #3b82f6, #8b5cf6);
border-radius: 50%;
margin: 0 auto 20px;
display: flex;
align-items: center;
justify-content: center;
font-size: 1.8rem;
color: white;
font-weight: bold;
box-shadow: 0 0 30px rgba(59, 130, 246, 0.3);
transition: all 0.4s ease;
}
.timeline-item:hover .icon {
transform: scale(1.1) rotate(5deg);
box-shadow: 0 0 40px rgba(59, 130, 246, 0.4);
}
.stats {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 30px;
margin-top: 50px;
}
.stat-item {
text-align: center;
background: rgba(255, 255, 255, 0.03);
padding: 40px 30px;
border-radius: 24px;
border: 1px solid rgba(255, 255, 255, 0.05);
backdrop-filter: blur(10px);
transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.stat-item:hover {
transform: translateY(-10px) scale(1.02);
background: rgba(59, 130, 246, 0.08);
border-color: #3b82f6;
box-shadow: 0 20px 40px -10px rgba(59, 130, 246, 0.2);
}
.stat-number {
font-size: 3.2rem;
font-weight: 800;
color: #3b82f6;
display: block;
margin-bottom: 10px;
text-shadow: 0 0 30px rgba(59, 130, 246, 0.3);
background: linear-gradient(135deg, #3b82f6, #8b5cf6);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}
.stat-label {
font-size: 1.1rem;
color: #94a3b8;
font-weight: 500;
}
.hero-image {
width: 100%;
max-width: 700px;
height: 450px;
object-fit: cover;
border-radius: 24px;
margin: 0;
box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.3);
border: 1px solid rgba(255, 255, 255, 0.1);
transition: all 0.4s ease;
}
.hero-image:hover {
transform: scale(1.02);
box-shadow: 0 30px 60px -15px rgba(0, 0, 0, 0.4);
}
.features-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 30px;
margin-top: 50px;
}
.feature-card {
background: rgba(255, 255, 255, 0.03);
padding: 35px 30px;
border-radius: 24px;
border: 1px solid rgba(255, 255, 255, 0.05);
transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
backdrop-filter: blur(10px);
}
.feature-card:hover {
transform: translateY(-10px) scale(1.02);
background: rgba(59, 130, 246, 0.08);
border-color: #3b82f6;
box-shadow: 0 20px 40px -10px rgba(59, 130, 246, 0.2);
}
.feature-icon {
width: 60px;
height: 60px;
background: linear-gradient(135deg, #3b82f6, #8b5cf6);
border-radius: 16px;
margin-bottom: 25px;
display: flex;
align-items: center;
justify-content: center;
color: white;
font-weight: bold;
box-shadow: 0 0 30px rgba(59, 130, 246, 0.3);
transition: all 0.4s ease;
}
.feature-card:hover .feature-icon {
transform: scale(1.1) rotate(5deg);
box-shadow: 0 0 40px rgba(59, 130, 246, 0.4);
}
.progress-indicator {
position: fixed;
top: 0;
left: 0;
height: 3px;
background: linear-gradient(90deg, #3b82f6, #8b5cf6, #06b6d4);
transition: width 0.4s ease;
z-index: 200;
opacity: 0.7;
}
/* Responsive Design */
@media (max-width: 1400px) {
.content-wrapper {
flex-direction: column;
padding: 0 40px;
gap: 60px;
}
.content-left,
.content-right {
max-width: 100%;
}
.timeline,
.features-grid {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 768px) {
.slide {
padding: 40px 20px;
}
.slide h1 {
font-size: 2.8rem;
}
.slide h2 {
font-size: 2rem;
}
.timeline,
.features-grid,
.stats {
grid-template-columns: 1fr;
}
.navigation {
bottom: 20px;
gap: 15px;
}
.nav-btn {
padding: 14px 28px;
font-size: 1rem;
}
}
@media (max-width: 480px) {
.slide {
padding: 30px 15px;
}
.slide h1 {
font-size: 2.2rem;
}
.slide h2 {
font-size: 1.6rem;
}
.slide-counter {
top: 20px;
right: 20px;
}
}
</style>
</head>
<body>
<div class="progress-indicator" id="progressBar"></div>
<div class="presentation-container">
<div class="slide-counter">
<span id="slideNumber">1</span>
/
<span id="totalSlides">12</span>
</div>
<!-- Slide 1: Welcome -->
<div class="slide active">
<div class="content-wrapper">
<div class="content-left">
<h1 class="welcome-animation gradient-text">Welcome to AI Engineering Bootcamp</h1>
<h2>Your Journey to AI Mastery Starts Here</h2>
<p style="font-size: 1.1rem; color: #94a3b8; margin-top: 15px">Ruangguru Engineering Academy+</p>
</div>
<div class="content-right">
<img src="https://images.unsplash.com/photo-1485827404703-89b55fcc595e?w=800&h=400&fit=crop&auto=format" alt="AI Technology" class="hero-image" />
</div>
</div>
</div>
<!-- Slide 2: What is AI? -->
<div class="slide">
<h2>What is Artificial Intelligence?</h2>
<p style="font-size: 1.3rem; margin-bottom: 40px">AI adalah teknologi yang memungkinkan mesin untuk belajar, berpikir, dan membuat keputusan seperti manusia</p>
<div class="stats" style="grid-template-columns: repeat(3, 1fr); max-width: 1200px">
<div class="stat-item">
<span class="stat-number">$200B+</span>
<p class="stat-label">AI Market Size by 2030</p>
</div>
<div class="stat-item">
<span class="stat-number">75%</span>
<p class="stat-label">Companies Using AI</p>
</div>
<div class="stat-item">
<span class="stat-number">97M+</span>
<p class="stat-label">New AI Jobs by 2025</p>
</div>
</div>
</div>
<!-- Slide 3: Why AI Engineering? -->
<div class="slide">
<h2>Why Choose AI Engineering?</h2>
<ul>
<li>
<strong>High Demand:</strong>
AI Engineers are among the most sought-after professionals
</li>
<li>
<strong>Competitive Salary:</strong>
Average salary $120K - $200K+ globally
</li>
<li>
<strong>Innovation Impact:</strong>
Build solutions that change the world
</li>
<li>
<strong>Future-Proof Career:</strong>
AI is the technology of tomorrow
</li>
<li>
<strong>Creative Problem Solving:</strong>
Combine technical skills with creativity
</li>
</ul>
</div>
<!-- Slide 4: Your Learning Journey -->
<div class="slide">
<h2>Your 2-Month Learning Journey</h2>
<div class="timeline">
<div class="timeline-item">
<div class="icon">1-2</div>
<h3>Week 1-2</h3>
<p>Python Fundamentals, Vibe Coding & n8n</p>
</div>
<div class="timeline-item">
<div class="icon">3-4</div>
<h3>Week 3-4</h3>
<p>Machine Learning & Deep Learning</p>
</div>
<div class="timeline-item">
<div class="icon">5-6</div>
<h3>Week 5-6</h3>
<p>LLM, Prompt Engineering, RAG</p>
</div>
<div class="timeline-item">
<div class="icon">7</div>
<h3>Week 7</h3>
<p>Visual Models, Agentic AI</p>
</div>
<div class="timeline-item">
<div class="icon">8</div>
<h3>Week 8</h3>
<p>Final Project & Soft Skills</p>
</div>
</div>
</div>
<!-- Slide 5: What You'll Build -->
<div class="slide">
<h2>Amazing Projects You'll Learn</h2>
<ul>
<li>
<strong>Machine Learning Models:</strong>
Predict and classify real-world data with scikit-learn
</li>
<li>
<strong>Deep Learning Applications:</strong>
Build neural networks with PyTorch and TensorFlow
</li>
<li>
<strong>LLM Applications:</strong>
Create chatbots, RAG systems, and AI assistants with LangChain
</li>
<li>
<strong>Computer Vision Apps:</strong>
Image recognition, object detection, and visual models
</li>
<li>
<strong>Agentic AI Systems:</strong>
Multi-agent systems and autonomous AI workflows
</li>
<li>
<strong>Final Portfolio Project:</strong>
End-to-end AI application showcasing your skills
</li>
</ul>
</div>
<!-- Slide 6: Tools & Technologies -->
<div class="slide">
<h2>Tools You'll Learn</h2>
<div class="timeline">
<div class="timeline-item">
<div class="icon">PY</div>
<h3>Python</h3>
<p>Core Programming Language</p>
</div>
<div class="timeline-item">
<div class="icon">N8</div>
<h3>n8n</h3>
<p>Workflow Automation</p>
</div>
<div class="timeline-item">
<div class="icon">PT</div>
<h3>PyTorch</h3>
<p>Deep Learning Framework</p>
</div>
<div class="timeline-item">
<div class="icon">HF</div>
<h3>Hugging Face</h3>
<p>LLM & Transformers</p>
</div>
<div class="timeline-item">
<div class="icon">LC</div>
<h3>LangChain</h3>
<p>RAG & LLM Applications</p>
</div>
<div class="timeline-item">
<div class="icon">CV</div>
<h3>Computer Vision</h3>
<p>Image & Video Models</p>
</div>
</div>
</div>
<!-- Slide 7: Success Mindset -->
<div class="slide">
<h2>Success Mindset for AI Mastery</h2>
<img src="https://images.unsplash.com/photo-1559136555-9303baea8ebd?w=800&h=300&fit=crop&auto=format" alt="Success Mindset" class="hero-image" />
<ul>
<li>
<strong>Growth Mindset:</strong>
Embrace challenges as learning opportunities
</li>
<li>
<strong>Consistent Practice:</strong>
Code every day, even if just 30 minutes
</li>
<li>
<strong>Community Learning:</strong>
Collaborate and learn from peers
</li>
<li>
<strong>Project-Based Learning:</strong>
Build to learn, don't just study theory
</li>
<li>
<strong>Stay Curious:</strong>
AI evolves rapidly - keep exploring
</li>
<li>
<strong>Persistence:</strong>
Every expert was once a beginner
</li>
</ul>
</div>
<!-- Slide 8: Learning Support -->
<div class="slide">
<h2>Your Learning Support System</h2>
<div class="timeline">
<div class="timeline-item">
<div class="icon">EI</div>
<h3>Expert Instructors</h3>
<p>Guidance from experienced AI practitioners and industry experts</p>
</div>
<div class="timeline-item">
<div class="icon">HM</div>
<h3>Hands-on Materials</h3>
<p>Google Colab Notebooks</p>
</div>
<div class="timeline-item">
<div class="icon">MS</div>
<h3>Mentoring Sessions</h3>
<p>Personal Guidance</p>
</div>
<div class="timeline-item">
<div class="icon">PR</div>
<h3>Project Reviews</h3>
<p>Feedback & Improvement</p>
</div>
</div>
</div>
<!-- Slide 9: Real-World Applications -->
<div class="slide">
<h2>AI Applications Changing the World</h2>
<img src="https://images.unsplash.com/photo-1451187580459-43490279c0fa?w=800&h=300&fit=crop&auto=format" alt="AI Applications" class="hero-image" />
<ul>
<li>
<strong>Healthcare:</strong>
Medical diagnosis, drug discovery, personalized treatment
</li>
<li>
<strong>Transportation:</strong>
Autonomous vehicles, traffic optimization
</li>
<li>
<strong>Finance:</strong>
Fraud detection, algorithmic trading, risk assessment
</li>
<li>
<strong>Entertainment:</strong>
Content recommendation, game AI, creative tools
</li>
<li>
<strong>Education:</strong>
Personalized learning, intelligent tutoring systems
</li>
<li>
<strong>Climate:</strong>
Weather prediction, energy optimization, sustainability
</li>
</ul>
</div>
<!-- Slide 10: Career Opportunities -->
<div class="slide">
<h2>Career Paths After This Bootcamp</h2>
<div class="timeline">
<div class="timeline-item">
<div class="icon">AE</div>
<h3>AI Engineer</h3>
<p>Build AI systems</p>
</div>
<div class="timeline-item">
<div class="icon">DS</div>
<h3>Data Scientist</h3>
<p>Extract insights from data</p>
</div>
<div class="timeline-item">
<div class="icon">ML</div>
<h3>ML Engineer</h3>
<p>Deploy ML models</p>
</div>
<div class="timeline-item">
<div class="icon">CV</div>
<h3>Computer Vision</h3>
<p>Image & video analysis</p>
</div>
<div class="timeline-item">
<div class="icon">LL</div>
<h3>LLM Developer</h3>
<p>Build applications with large language models</p>
</div>
<div class="timeline-item">
<div class="icon">EN</div>
<h3>AI Entrepreneur</h3>
<p>Start your AI company</p>
</div>
</div>
</div>
<!-- Slide 11: Commitment -->
<div class="slide">
<h2>Your Commitment to Success</h2>
<img src="https://images.unsplash.com/photo-1552664730-d307ca884978?w=800&h=300&fit=crop&auto=format" alt="Commitment" class="hero-image" />
<ul>
<li>
<strong>Attend all sessions:</strong>
Every class builds upon the previous one
</li>
<li>
<strong>Complete all projects:</strong>
Hands-on practice is crucial for mastery
</li>
<li>
<strong>Participate actively:</strong>
Ask questions, engage in discussions
</li>
<li>
<strong>Practice consistently:</strong>
Dedicate time daily for coding practice
</li>
<li>
<strong>Build your portfolio:</strong>
Showcase your projects on GitHub
</li>
<li>
<strong>Network with peers:</strong>
Build lasting professional relationships
</li>
</ul>
</div>
<!-- Slide 12: Let's Begin! -->
<div class="slide">
<h1 class="gradient-text">Ready to Transform Your Future?</h1>
<h2>Your AI Journey Starts NOW!</h2>
<img src="https://images.unsplash.com/photo-1517077304055-6e89abbf09b0?w=800&h=400&fit=crop&auto=format" alt="Future Technology" class="hero-image" />
<p style="font-size: 1.4rem; margin-top: 30px">
<span class="highlight">Next Session:</span>
19 Januari 2026 - Python Basics
</p>
<p style="font-size: 1.2rem; margin-top: 20px; color: #64748b">
"The best time to plant a tree was 20 years ago.
<br />
The second best time is now."
</p>
<p style="font-size: 1.3rem; margin-top: 30px; font-weight: 600">Let's build the future together!</p>
</div>
<div class="navigation">
<button class="nav-btn" onclick="previousSlide()">← Previous</button>
<button class="nav-btn" onclick="nextSlide()">Next →</button>
</div>
</div>
<script>
let currentSlide = 0;
const slides = document.querySelectorAll('.slide');
const totalSlides = slides.length;
const progressBar = document.getElementById('progressBar');
document.getElementById('totalSlides').textContent = totalSlides;
function updateProgressBar() {
const progress = ((currentSlide + 1) / totalSlides) * 100;
progressBar.style.width = progress + '%';
}
function showSlide(n) {
slides[currentSlide].classList.remove('active');
currentSlide = (n + totalSlides) % totalSlides;
slides[currentSlide].classList.add('active');
document.getElementById('slideNumber').textContent = currentSlide + 1;
updateProgressBar();
}
function nextSlide() {
showSlide(currentSlide + 1);
}
function previousSlide() {
showSlide(currentSlide - 1);
}
// Initialize progress bar
updateProgressBar();
// Keyboard navigation
document.addEventListener('keydown', function (e) {
if (e.key === 'ArrowRight' || e.key === ' ') {
e.preventDefault();
nextSlide();
} else if (e.key === 'ArrowLeft') {
e.preventDefault();
previousSlide();
} else if (e.key === 'Home') {
e.preventDefault();
showSlide(0);
} else if (e.key === 'End') {
e.preventDefault();
showSlide(totalSlides - 1);
}
});
// Touch/swipe support for mobile
let touchStartX = 0;
let touchEndX = 0;
document.addEventListener('touchstart', function (e) {
touchStartX = e.changedTouches[0].screenX;
});
document.addEventListener('touchend', function (e) {
touchEndX = e.changedTouches[0].screenX;
handleSwipe();
});
function handleSwipe() {
const swipeThreshold = 50;
const diff = touchStartX - touchEndX;
if (Math.abs(diff) > swipeThreshold) {
if (diff > 0) {
nextSlide(); // Swipe left - next slide
} else {
previousSlide(); // Swipe right - previous slide
}
}
}
// Auto-advance slides (optional - uncomment if needed)
// setInterval(nextSlide, 15000); // Auto advance every 15 seconds
</script>
</body>
</html>