vibe-coding-landing / index.html
mattchx's picture
Initial commit
439e433 verified
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Vibe Code - Learn to Code with Good Vibes</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>
@keyframes float {
0%, 100% { transform: translateY(0); }
50% { transform: translateY(-20px); }
}
.floating {
animation: float 6s ease-in-out infinite;
}
.gradient-text {
background: linear-gradient(90deg, #f79533, #f37055, #ef4e7b, #a166ab, #5073b8, #1098ad, #07b39b, #6fba82);
-webkit-background-clip: text;
background-clip: text;
color: transparent;
background-size: 300% 300%;
animation: gradient 8s ease infinite;
}
@keyframes gradient {
0% { background-position: 0% 50%; }
50% { background-position: 100% 50%; }
100% { background-position: 0% 50%; }
}
.code-block {
font-family: 'Courier New', monospace;
position: relative;
}
.code-block::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 4px;
height: 100%;
background: linear-gradient(to bottom, #ff8a00, #e52e71);
border-radius: 4px 0 0 4px;
}
.vibe-wave {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
overflow: hidden;
line-height: 0;
}
.vibe-wave svg {
position: relative;
display: block;
width: calc(100% + 1.3px);
height: 150px;
}
.vibe-wave .shape-fill {
fill: #F3F4F6;
}
.card-hover:hover {
transform: translateY(-10px) rotate(2deg);
box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}
.typewriter {
overflow: hidden;
border-right: .15em solid orange;
white-space: nowrap;
margin: 0 auto;
letter-spacing: .15em;
animation: typing 3.5s steps(40, end), blink-caret .75s step-end infinite;
}
@keyframes typing {
from { width: 0 }
to { width: 100% }
}
@keyframes blink-caret {
from, to { border-color: transparent }
50% { border-color: orange; }
}
</style>
</head>
<body class="bg-gray-50 font-sans">
<!-- Navigation -->
<nav class="bg-white shadow-sm sticky top-0 z-50">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="flex justify-between h-16">
<div class="flex items-center">
<div class="flex-shrink-0 flex items-center">
<i class="fas fa-code text-2xl text-purple-500 mr-2"></i>
<span class="text-xl font-bold gradient-text">VibeCode</span>
</div>
</div>
<div class="hidden md:ml-6 md:flex md:items-center md:space-x-8">
<a href="#home" class="text-gray-900 hover:text-purple-600 px-3 py-2 text-sm font-medium">Home</a>
<a href="#courses" class="text-gray-900 hover:text-purple-600 px-3 py-2 text-sm font-medium">Courses</a>
<a href="#community" class="text-gray-900 hover:text-purple-600 px-3 py-2 text-sm font-medium">Community</a>
<a href="#about" class="text-gray-900 hover:text-purple-600 px-3 py-2 text-sm font-medium">About</a>
<button class="bg-gradient-to-r from-purple-500 to-pink-500 text-white px-4 py-2 rounded-md text-sm font-medium hover:from-purple-600 hover:to-pink-600 transition duration-300">
Start Vibing
</button>
</div>
<div class="-mr-2 flex items-center md:hidden">
<button type="button" class="inline-flex items-center justify-center p-2 rounded-md text-gray-400 hover:text-gray-500 hover:bg-gray-100 focus:outline-none focus:ring-2 focus:ring-inset focus:ring-purple-500" aria-controls="mobile-menu" aria-expanded="false">
<span class="sr-only">Open main menu</span>
<i class="fas fa-bars"></i>
</button>
</div>
</div>
</div>
</nav>
<!-- Hero Section -->
<section id="home" class="relative overflow-hidden">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-20 md:py-32">
<div class="lg:grid lg:grid-cols-12 lg:gap-8">
<div class="sm:text-center md:max-w-2xl md:mx-auto lg:col-span-6 lg:text-left">
<h1 class="text-4xl tracking-tight font-extrabold text-gray-900 sm:text-5xl md:text-6xl">
<span class="block">Learn to</span>
<span class="block gradient-text">Vibe Code</span>
</h1>
<p class="mt-3 text-base text-gray-500 sm:mt-5 sm:text-lg sm:max-w-xl sm:mx-auto md:mt-5 md:text-xl lg:mx-0">
Where coding meets creativity and good vibes. Our approach makes learning to code feel like jamming with friends, not studying.
</p>
<div class="mt-8 sm:max-w-lg sm:mx-auto sm:text-center lg:text-left lg:mx-0">
<div class="space-y-4 sm:space-y-0 sm:inline-grid sm:grid-cols-2 sm:gap-5">
<a href="#" class="flex items-center justify-center px-6 py-3 border border-transparent text-base font-medium rounded-md text-white bg-gradient-to-r from-purple-500 to-pink-500 hover:from-purple-600 hover:to-pink-600 shadow-lg hover:shadow-xl transition duration-300">
Get Started
<i class="fas fa-arrow-right ml-2"></i>
</a>
<a href="#" class="flex items-center justify-center px-6 py-3 border border-transparent text-base font-medium rounded-md text-purple-700 bg-purple-100 hover:bg-purple-200 transition duration-300">
<i class="fas fa-play-circle mr-2"></i>
Watch Demo
</a>
</div>
</div>
</div>
<div class="mt-12 relative sm:max-w-lg sm:mx-auto lg:mt-0 lg:max-w-none lg:mx-0 lg:col-span-6 lg:flex lg:items-center">
<div class="relative mx-auto w-full rounded-lg shadow-lg lg:max-w-md">
<div class="relative block w-full bg-white overflow-hidden rounded-lg">
<div class="absolute inset-0 bg-gradient-to-br from-purple-500 to-pink-500 opacity-20 rounded-lg"></div>
<div class="relative p-8">
<div class="code-block bg-gray-900 text-gray-100 p-6 rounded-lg overflow-x-auto">
<pre><code class="text-sm">
<span class="text-purple-400">function</span> <span class="text-yellow-300">vibeCheck</span>() {
<span class="text-purple-400">const</span> <span class="text-blue-300">goodVibes</span> = <span class="text-green-400">true</span>;
<span class="text-purple-400">if</span> (<span class="text-blue-300">goodVibes</span>) {
<span class="text-blue-300">console</span>.<span class="text-yellow-300">log</span>(<span class="text-orange-300">'✨ You're in the zone! ✨'</span>);
<span class="text-purple-400">return</span> <span class="text-orange-300">'Keep coding with those good vibes!'</span>;
} <span class="text-purple-400">else</span> {
<span class="text-blue-300">console</span>.<span class="text-yellow-300">log</span>(<span class="text-orange-300">'☕ Maybe take a break?'</span>);
<span class="text-purple-400">return</span> <span class="text-orange-300">'Time for some self-care!'</span>;
}
}
</code></pre>
</div>
<div class="mt-6 flex items-center">
<div class="flex-shrink-0">
<img class="h-10 w-10 rounded-full" src="https://images.unsplash.com/photo-1494790108377-be9c29b29330?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=facearea&facepad=4&w=256&h=256&q=60" alt="">
</div>
<div class="ml-3">
<p class="text-sm font-medium text-gray-900">Jamie Coder</p>
<p class="text-sm text-gray-500">Vibe Coding Instructor</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="vibe-wave">
<svg data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120" preserveAspectRatio="none">
<path d="M321.39,56.44c58-10.79,114.16-30.13,172-41.86,82.39-16.72,168.19-17.73,250.45-.39C823.78,31,906.67,72,985.66,92.83c70.05,18.48,146.53,26.09,214.34,3V0H0V27.35A600.21,600.21,0,0,0,321.39,56.44Z" class="shape-fill"></path>
</svg>
</div>
</section>
<!-- Features Section -->
<section class="bg-gray-100 py-16">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="lg:text-center">
<h2 class="text-base text-purple-600 font-semibold tracking-wide uppercase">Vibe Coding</h2>
<p class="mt-2 text-3xl leading-8 font-extrabold tracking-tight text-gray-900 sm:text-4xl">
A better way to learn code
</p>
<p class="mt-4 max-w-2xl text-xl text-gray-500 lg:mx-auto">
Our unique approach combines technical skills with mindfulness and creativity.
</p>
</div>
<div class="mt-20">
<div class="space-y-10 md:space-y-0 md:grid md:grid-cols-2 md:gap-x-8 md:gap-y-10">
<div class="relative bg-white p-6 rounded-lg shadow-md hover:shadow-xl transition duration-300 card-hover">
<div class="absolute -top-6 left-6 bg-purple-500 text-white rounded-full p-3">
<i class="fas fa-heart text-xl"></i>
</div>
<div class="mt-6">
<h3 class="text-lg font-medium text-gray-900">Mindful Coding</h3>
<p class="mt-2 text-base text-gray-500">
Learn to code in a stress-free environment that encourages flow state and creativity.
</p>
</div>
</div>
<div class="relative bg-white p-6 rounded-lg shadow-md hover:shadow-xl transition duration-300 card-hover">
<div class="absolute -top-6 left-6 bg-pink-500 text-white rounded-full p-3">
<i class="fas fa-users text-xl"></i>
</div>
<div class="mt-6">
<h3 class="text-lg font-medium text-gray-900">Community Vibes</h3>
<p class="mt-2 text-base text-gray-500">
Join our supportive community where everyone lifts each other up.
</p>
</div>
</div>
<div class="relative bg-white p-6 rounded-lg shadow-md hover:shadow-xl transition duration-300 card-hover">
<div class="absolute -top-6 left-6 bg-yellow-500 text-white rounded-full p-3">
<i class="fas fa-music text-xl"></i>
</div>
<div class="mt-6">
<h3 class="text-lg font-medium text-gray-900">Coding Playlists</h3>
<p class="mt-2 text-base text-gray-500">
Curated music playlists to match your coding mood and boost productivity.
</p>
</div>
</div>
<div class="relative bg-white p-6 rounded-lg shadow-md hover:shadow-xl transition duration-300 card-hover">
<div class="absolute -top-6 left-6 bg-green-500 text-white rounded-full p-3">
<i class="fas fa-lightbulb text-xl"></i>
</div>
<div class="mt-6">
<h3 class="text-lg font-medium text-gray-900">Creative Projects</h3>
<p class="mt-2 text-base text-gray-500">
Build fun, artistic projects that make coding feel like play.
</p>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- Courses Section -->
<section id="courses" class="py-16 bg-white">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="text-center">
<h2 class="text-3xl font-extrabold text-gray-900 sm:text-4xl">
Our Vibe Coding Courses
</h2>
<p class="mt-3 max-w-2xl mx-auto text-xl text-gray-500 sm:mt-4">
Choose your coding adventure. All courses come with good vibes included.
</p>
</div>
<div class="mt-16 space-y-12 lg:space-y-0 lg:grid lg:grid-cols-3 lg:gap-x-8">
<div class="group relative bg-white p-6 focus-within:ring-2 focus-within:ring-inset focus-within:ring-purple-500 rounded-lg overflow-hidden shadow-md hover:shadow-xl transition duration-300 transform hover:-translate-y-2">
<div class="rounded-lg overflow-hidden">
<div class="aspect-w-3 aspect-h-2 bg-gradient-to-r from-purple-400 to-pink-400 group-hover:from-purple-500 group-hover:to-pink-500 transition duration-300 h-48 flex items-center justify-center">
<i class="fas fa-laptop-code text-white text-6xl"></i>
</div>
</div>
<div class="mt-6">
<div class="flex items-center">
<span class="bg-purple-100 text-purple-800 text-xs font-semibold px-2.5 py-0.5 rounded">Beginner</span>
<span class="ml-2 text-sm text-gray-500">4 weeks</span>
</div>
<h3 class="mt-2 text-lg font-medium text-gray-900">
<a href="#" class="focus:outline-none">
<span class="absolute inset-0" aria-hidden="true"></span>
Web Dev Vibes
</a>
</h3>
<p class="mt-2 text-sm text-gray-500">
Learn HTML, CSS, and JavaScript while creating colorful, interactive web experiences.
</p>
</div>
<div class="mt-6 flex items-center justify-between">
<span class="text-2xl font-bold text-gray-900">$99</span>
<button class="px-4 py-2 bg-purple-100 text-purple-700 rounded-md hover:bg-purple-200 transition duration-300">
Enroll Now
</button>
</div>
</div>
<div class="group relative bg-white p-6 focus-within:ring-2 focus-within:ring-inset focus-within:ring-purple-500 rounded-lg overflow-hidden shadow-md hover:shadow-xl transition duration-300 transform hover:-translate-y-2">
<div class="rounded-lg overflow-hidden">
<div class="aspect-w-3 aspect-h-2 bg-gradient-to-r from-blue-400 to-teal-400 group-hover:from-blue-500 group-hover:to-teal-500 transition duration-300 h-48 flex items-center justify-center">
<i class="fas fa-mobile-alt text-white text-6xl"></i>
</div>
</div>
<div class="mt-6">
<div class="flex items-center">
<span class="bg-blue-100 text-blue-800 text-xs font-semibold px-2.5 py-0.5 rounded">Intermediate</span>
<span class="ml-2 text-sm text-gray-500">6 weeks</span>
</div>
<h3 class="mt-2 text-lg font-medium text-gray-900">
<a href="#" class="focus:outline-none">
<span class="absolute inset-0" aria-hidden="true"></span>
App Flow State
</a>
</h3>
<p class="mt-2 text-sm text-gray-500">
Build mobile apps with React Native while maintaining your creative flow.
</p>
</div>
<div class="mt-6 flex items-center justify-between">
<span class="text-2xl font-bold text-gray-900">$149</span>
<button class="px-4 py-2 bg-blue-100 text-blue-700 rounded-md hover:bg-blue-200 transition duration-300">
Enroll Now
</button>
</div>
</div>
<div class="group relative bg-white p-6 focus-within:ring-2 focus-within:ring-inset focus-within:ring-purple-500 rounded-lg overflow-hidden shadow-md hover:shadow-xl transition duration-300 transform hover:-translate-y-2">
<div class="rounded-lg overflow-hidden">
<div class="aspect-w-3 aspect-h-2 bg-gradient-to-r from-yellow-400 to-orange-400 group-hover:from-yellow-500 group-hover:to-orange-500 transition duration-300 h-48 flex items-center justify-center">
<i class="fas fa-gamepad text-white text-6xl"></i>
</div>
</div>
<div class="mt-6">
<div class="flex items-center">
<span class="bg-yellow-100 text-yellow-800 text-xs font-semibold px-2.5 py-0.5 rounded">Advanced</span>
<span class="ml-2 text-sm text-gray-500">8 weeks</span>
</div>
<h3 class="mt-2 text-lg font-medium text-gray-900">
<a href="#" class="focus:outline-none">
<span class="absolute inset-0" aria-hidden="true"></span>
Creative Coding Jam
</a>
</h3>
<p class="mt-2 text-sm text-gray-500">
Create generative art and interactive experiences with JavaScript and p5.js.
</p>
</div>
<div class="mt-6 flex items-center justify-between">
<span class="text-2xl font-bold text-gray-900">$199</span>
<button class="px-4 py-2 bg-yellow-100 text-yellow-700 rounded-md hover:bg-yellow-200 transition duration-300">
Enroll Now
</button>
</div>
</div>
</div>
</div>
</section>
<!-- Testimonials -->
<section class="bg-purple-50 py-16">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="text-center">
<h2 class="text-3xl font-extrabold text-gray-900 sm:text-4xl">
Vibe Check from Our Students
</h2>
<p class="mt-3 max-w-2xl mx-auto text-xl text-gray-500 sm:mt-4">
Don't just take our word for it. Here's what our community says.
</p>
</div>
<div class="mt-16 grid gap-8 md:grid-cols-2 lg:grid-cols-3">
<div class="bg-white p-6 rounded-lg shadow-md">
<div class="flex items-center">
<div class="flex-shrink-0">
<img class="h-12 w-12 rounded-full" src="https://randomuser.me/api/portraits/women/42.jpg" alt="">
</div>
<div class="ml-4">
<h4 class="text-lg font-medium text-gray-900">Sarah K.</h4>
<div class="flex text-yellow-400">
<i class="fas fa-star"></i>
<i class="fas fa-star"></i>
<i class="fas fa-star"></i>
<i class="fas fa-star"></i>
<i class="fas fa-star"></i>
</div>
</div>
</div>
<div class="mt-4">
<p class="text-gray-600 italic">
"I used to dread coding, but Vibe Code made it fun! The creative projects and chill community helped me actually enjoy learning."
</p>
</div>
</div>
<div class="bg-white p-6 rounded-lg shadow-md">
<div class="flex items-center">
<div class="flex-shrink-0">
<img class="h-12 w-12 rounded-full" src="https://randomuser.me/api/portraits/men/32.jpg" alt="">
</div>
<div class="ml-4">
<h4 class="text-lg font-medium text-gray-900">Marcus T.</h4>
<div class="flex text-yellow-400">
<i class="fas fa-star"></i>
<i class="fas fa-star"></i>
<i class="fas fa-star"></i>
<i class="fas fa-star"></i>
<i class="fas fa-star"></i>
</div>
</div>
</div>
<div class="mt-4">
<p class="text-gray-600 italic">
"The coding playlists are genius! I never knew I could get in the zone so easily. Finished my first web app in just 3 weeks."
</p>
</div>
</div>
<div class="bg-white p-6 rounded-lg shadow-md">
<div class="flex items-center">
<div class="flex-shrink-0">
<img class="h-12 w-12 rounded-full" src="https://randomuser.me/api/portraits/women/63.jpg" alt="">
</div>
<div class="ml-4">
<h4 class="text-lg font-medium text-gray-900">Priya M.</h4>
<div class="flex text-yellow-400">
<i class="fas fa-star"></i>
<i class="fas fa-star"></i>
<i class="fas fa-star"></i>
<i class="fas fa-star"></i>
<i class="fas fa-star-half-alt"></i>
</div>
</div>
</div>
<div class="mt-4">
<p class="text-gray-600 italic">
"As a designer, I was intimidated by code. The visual approach made everything click. Now I can prototype my own ideas!"
</p>
</div>
</div>
</div>
</div>
</section>
<!-- CTA Section -->
<section class="bg-gradient-to-r from-purple-600 to-pink-600 py-16">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="text-center">
<h2 class="text-3xl font-extrabold text-white sm:text-4xl">
Ready to Code with Good Vibes?
</h2>
<p class="mt-3 max-w-2xl mx-auto text-xl text-purple-100 sm:mt-4">
Join thousands of developers who've found their coding flow.
</p>
<div class="mt-8 flex justify-center">
<div class="inline-flex rounded-md shadow">
<a href="#" class="inline-flex items-center justify-center px-5 py-3 border border-transparent text-base font-medium rounded-md text-purple-700 bg-white hover:bg-purple-50 transition duration-300">
Start Free Trial
<i class="fas fa-arrow-right ml-3"></i>
</a>
</div>
<div class="ml-3 inline-flex">
<a href="#" class="inline-flex items-center justify-center px-5 py-3 border border-transparent text-base font-medium rounded-md text-white bg-purple-700 bg-opacity-60 hover:bg-opacity-70 transition duration-300">
<i class="fas fa-question-circle mr-3"></i>
Learn More
</a>
</div>
</div>
</div>
</div>
</section>
<!-- Footer -->
<footer class="bg-gray-900 text-white pt-16 pb-8">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="grid grid-cols-2 md:grid-cols-4 gap-8">
<div>
<h3 class="text-lg font-semibold">VibeCode</h3>
<p class="mt-4 text-gray-400">
Making coding education more human, creative, and enjoyable.
</p>
<div class="mt-4 flex space-x-6">
<a href="#" class="text-gray-400 hover:text-white">
<i class="fab fa-twitter"></i>
</a>
<a href="#" class="text-gray-400 hover:text-white">
<i class="fab fa-instagram"></i>
</a>
<a href="#" class="text-gray-400 hover:text-white">
<i class="fab fa-github"></i>
</a>
<a href="#" class="text-gray-400 hover:text-white">
<i class="fab fa-discord"></i>
</a>
</div>
</div>
<div>
<h3 class="text-lg font-semibold">Courses</h3>
<ul class="mt-4 space-y-2">
<li><a href="#" class="text-gray-400 hover:text-white">Web Dev Vibes</a></li>
<li><a href="#" class="text-gray-400 hover:text-white">App Flow State</a></li>
<li><a href="#" class="text-gray-400 hover:text-white">Creative Coding Jam</a></li>
<li><a href="#" class="text-gray-400 hover:text-white">Data Visualization Groove</a></li>
</ul>
</div>
<div>
<h3 class="text-lg font-semibold">Resources</h3>
<ul class="mt-4 space-y-2">
<li><a href="#" class="text-gray-400 hover:text-white">Blog</a></li>
<li><a href="#" class="text-gray-400 hover:text-white">Coding Playlists</a></li>
<li><a href="#" class="text-gray-400 hover:text-white">Vibe Check Tool</a></li>
<li><a href="#" class="text-gray-400 hover:text-white">Free Workshops</a></li>
</ul>
</div>
<div>
<h3 class="text-lg font-semibold">Company</h3>
<ul class="mt-4 space-y-2">
<li><a href="#" class="text-gray-400 hover:text-white">About</a></li>
<li><a href="#" class="text-gray-400 hover:text-white">Careers</a></li>
<li><a href="#" class="text-gray-400 hover:text-white">Contact</a></li>
<li><a href="#" class="text-gray-400 hover:text-white">Privacy</a></li>
</ul>
</div>
</div>
<div class="mt-12 border-t border-gray-800 pt-8 flex flex-col md:flex-row justify-between">
<p class="text-gray-400 text-sm">
&copy; 2023 VibeCode. All rights reserved.
</p>
<div class="mt-4 md:mt-0">
<p class="text-gray-400 text-sm">
Made with <i class="fas fa-heart text-pink-500"></i> and good vibes.
</p>
</div>
</div>
</div>
</footer>
<script>
// Simple typewriter effect for demo purposes
document.addEventListener('DOMContentLoaded', function() {
const phrases = [
"Coding should feel like jamming with friends.",
"Good vibes only in this codebase.",
"Creativity meets technical skills.",
"Find your coding flow state."
];
let currentPhrase = 0;
const typewriterElement = document.createElement('div');
typewriterElement.className = 'typewriter text-xl text-purple-600 font-medium mt-4';
document.querySelector('#home .lg\\:text-left').appendChild(typewriterElement);
function typeWriter() {
if (currentPhrase >= phrases.length) currentPhrase = 0;
const text = phrases[currentPhrase];
let i = 0;
typewriterElement.innerHTML = '';
typewriterElement.style.width = '0';
function typing() {
if (i < text.length) {
typewriterElement.innerHTML += text.charAt(i);
i++;
setTimeout(typing, 100);
} else {
setTimeout(erase, 2000);
}
}
function erase() {
if (i > 0) {
typewriterElement.innerHTML = text.substring(0, i-1);
i--;
setTimeout(erase, 50);
} else {
currentPhrase++;
setTimeout(typeWriter, 500);
}
}
typing();
}
typeWriter();
// Mobile menu toggle
const mobileMenuButton = document.querySelector('button[aria-controls="mobile-menu"]');
mobileMenuButton.addEventListener('click', function() {
const expanded = this.getAttribute('aria-expanded') === 'true';
this.setAttribute('aria-expanded', !expanded);
// You would toggle your mobile menu here
alert("Mobile menu would open here in a full implementation!");
});
});
</script>
</body>
</html>