yurni / index.html
Pablozach's picture
Real nitro - Initial Deployment
26e7918 verified
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Nitro Generator Tool</title>
<script src="https://cdn.tailwindcss.com"></script>
<link href="https://unpkg.com/aos@2.3.1/dist/aos.css" rel="stylesheet">
<script src="https://unpkg.com/aos@2.3.1/dist/aos.js"></script>
<script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
<script src="https://unpkg.com/feather-icons"></script>
<style>
.glow {
text-shadow: 0 0 10px rgba(255, 0, 255, 0.7);
}
.gradient-bg {
background: linear-gradient(135deg, #8a2be2 0%, #4b0082 100%);
}
.code-box {
font-family: 'Courier New', monospace;
letter-spacing: 1px;
}
.pulse {
animation: pulse 2s infinite;
}
@keyframes pulse {
0% { transform: scale(1); }
50% { transform: scale(1.05); }
100% { transform: scale(1); }
}
</style>
</head>
<body class="min-h-screen bg-gray-900 text-white">
<div class="gradient-bg min-h-screen flex flex-col">
<!-- Header -->
<header class="py-6 px-4 sm:px-6 lg:px-8">
<div class="flex justify-between items-center">
<h1 class="text-2xl font-bold glow">NitroGen Pro</h1>
<div class="flex space-x-4">
<button class="flex items-center space-x-1 bg-purple-800 hover:bg-purple-700 px-4 py-2 rounded-lg transition">
<i data-feather="info"></i>
<span>About</span>
</button>
<button class="flex items-center space-x-1 bg-purple-800 hover:bg-purple-700 px-4 py-2 rounded-lg transition">
<i data-feather="settings"></i>
<span>Settings</span>
</button>
</div>
</div>
</header>
<!-- Main Content -->
<main class="flex-grow flex flex-col items-center justify-center px-4 sm:px-6 lg:px-8" data-aos="fade-up">
<div class="max-w-2xl w-full bg-gray-800 bg-opacity-50 backdrop-blur-lg rounded-xl p-8 shadow-2xl">
<div class="text-center mb-8">
<h2 class="text-3xl font-bold mb-2 glow">Discord Nitro Generator</h2>
<p class="text-gray-300">Generate random Discord Nitro gift codes instantly</p>
</div>
<div class="mb-8">
<div class="flex justify-between items-center mb-4">
<label class="text-lg font-medium">Number of codes</label>
<div class="flex items-center space-x-2">
<button id="decrease" class="bg-purple-800 hover:bg-purple-700 w-8 h-8 rounded flex items-center justify-center">
<i data-feather="minus"></i>
</button>
<input id="count" type="number" min="1" max="100" value="5" class="w-16 text-center bg-gray-700 rounded py-1">
<button id="increase" class="bg-purple-800 hover:bg-purple-700 w-8 h-8 rounded flex items-center justify-center">
<i data-feather="plus"></i>
</button>
</div>
</div>
<div class="flex justify-between items-center mb-6">
<label class="text-lg font-medium">Code type</label>
<div class="flex space-x-4">
<label class="flex items-center space-x-2">
<input type="radio" name="type" value="classic" checked class="form-radio text-purple-500">
<span>Classic</span>
</label>
<label class="flex items-center space-x-2">
<input type="radio" name="type" value="boost" class="form-radio text-purple-500">
<span>Boost</span>
</label>
</div>
</div>
<button id="generateBtn" class="w-full py-3 bg-purple-600 hover:bg-purple-500 rounded-lg font-bold text-lg pulse flex items-center justify-center space-x-2 transition">
<i data-feather="zap"></i>
<span>Generate Codes</span>
</button>
</div>
<div id="results" class="hidden">
<div class="flex justify-between items-center mb-4">
<h3 class="text-xl font-medium">Generated Codes</h3>
<button id="copyAll" class="flex items-center space-x-1 bg-purple-800 hover:bg-purple-700 px-3 py-1 rounded text-sm">
<i data-feather="copy"></i>
<span>Copy All</span>
</button>
</div>
<div id="codeList" class="space-y-2 max-h-64 overflow-y-auto p-2 bg-gray-900 rounded-lg">
<!-- Codes will appear here -->
</div>
<div class="mt-4 text-center text-sm text-gray-400">
<p>These are randomly generated codes. There's no guarantee they will work.</p>
</div>
</div>
</div>
</main>
<!-- Footer -->
<footer class="py-6 px-4 sm:px-6 lg:px-8 text-center text-gray-400 text-sm">
<p>© 2023 NitroGen Pro. This tool is for educational purposes only.</p>
</footer>
</div>
<script>
document.addEventListener('DOMContentLoaded', () => {
feather.replace();
AOS.init();
// Counter controls
const countInput = document.getElementById('count');
document.getElementById('increase').addEventListener('click', () => {
countInput.value = Math.min(100, parseInt(countInput.value) + 1);
});
document.getElementById('decrease').addEventListener('click', () => {
countInput.value = Math.max(1, parseInt(countInput.value) - 1);
});
// Generate button
document.getElementById('generateBtn').addEventListener('click', () => {
const count = parseInt(countInput.value);
const type = document.querySelector('input[name="type"]:checked').value;
// Clear previous results
const codeList = document.getElementById('codeList');
codeList.innerHTML = '';
// Generate codes
for (let i = 0; i < count; i++) {
const code = generateCode(type);
const codeElement = document.createElement('div');
codeElement.className = 'flex justify-between items-center bg-gray-700 p-3 rounded code-box';
codeElement.innerHTML = `
<span>${code}</span>
<button class="copy-btn flex items-center space-x-1 bg-purple-800 hover:bg-purple-700 px-2 py-1 rounded text-xs" data-code="${code}">
<i data-feather="copy" class="w-3 h-3"></i>
<span>Copy</span>
</button>
`;
codeList.appendChild(codeElement);
}
// Show results
document.getElementById('results').classList.remove('hidden');
// Scroll to results
document.getElementById('results').scrollIntoView({ behavior: 'smooth' });
// Update feather icons
feather.replace();
// Add copy event listeners
document.querySelectorAll('.copy-btn').forEach(btn => {
btn.addEventListener('click', (e) => {
const code = e.currentTarget.getAttribute('data-code');
navigator.clipboard.writeText(code);
// Show copied feedback
const icon = e.currentTarget.querySelector('i');
icon.setAttribute('data-feather', 'check');
feather.replace();
setTimeout(() => {
icon.setAttribute('data-feather', 'copy');
feather.replace();
}, 1000);
});
});
});
// Copy all button
document.getElementById('copyAll').addEventListener('click', () => {
const codes = Array.from(document.querySelectorAll('.copy-btn')).map(btn => btn.getAttribute('data-code'));
navigator.clipboard.writeText(codes.join('\n'));
// Show copied feedback
const icon = document.getElementById('copyAll').querySelector('i');
icon.setAttribute('data-feather', 'check');
feather.replace();
setTimeout(() => {
icon.setAttribute('data-feather', 'copy');
feather.replace();
}, 1000);
});
// Function to generate random code
function generateCode(type) {
const prefix = type === 'boost' ? 'https://discord.gift/' : 'https://discord.com/gifts/';
const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
let code = '';
for (let i = 0; i < 16; i++) {
code += chars.charAt(Math.floor(Math.random() * chars.length));
}
return prefix + code;
}
});
</script>
</body>
</html>