Bxjx / index.html
Offex's picture
Rename app.py to index.html
d240008 verified
<!DOCTYPE html>
<html lang="hi">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Premium Temp Mail (ElevenLabs Bypass)</title>
<script src="https://cdn.tailwindcss.com"></script>
</head>
<body class="bg-slate-900 text-white min-h-screen p-5">
<div class="max-w-2xl mx-auto bg-slate-800 p-6 rounded-2xl shadow-2xl border border-slate-700">
<h1 class="text-3xl font-bold mb-6 text-center text-blue-400">Advanced Temp Mail</h1>
<div class="space-y-4">
<div>
<label class="block text-sm mb-1 text-slate-400">Aapka Temporary Email:</label>
<div class="flex gap-2">
<input id="mail-address" readonly class="w-full bg-slate-700 border border-slate-600 p-3 rounded-lg font-mono text-green-400" placeholder="Generating email...">
<button onclick="copyEmail()" class="bg-blue-600 hover:bg-blue-700 px-6 rounded-lg transition">Copy</button>
</div>
</div>
<button onclick="createNewEmail()" class="w-full bg-green-600 hover:bg-green-700 p-3 rounded-lg font-bold transition">Naya Email Banayein</button>
<div class="mt-8">
<div class="flex justify-between items-center mb-4">
<h2 class="text-xl font-semibold">Inbox</h2>
<span id="status" class="text-xs text-slate-500 italic font-mono">Auto-checking...</span>
</div>
<div id="inbox-list" class="space-y-3">
<p class="text-center text-slate-500 py-10">Messages ka intezar hai... (ElevenLabs ka OTP yaha aayega)</p>
</div>
</div>
</div>
</div>
<script>
const API = "https://api.mail.gw";
let userData = { address: "", password: "", token: "" };
async function createNewEmail() {
document.getElementById('mail-address').value = "Generating...";
try {
// 1. Get Domain
const domainRes = await fetch(`${API}/domains`);
const domains = await domainRes.json();
const domain = domains['hydra:member'][0].domain;
// 2. Create Account
const randomUser = Math.random().toString(36).substring(7);
const address = `${randomUser}@${domain}`;
const password = "Password123!";
const regRes = await fetch(`${API}/accounts`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ address, password })
});
if (regRes.ok) {
// 3. Get Token (Login)
const loginRes = await fetch(`${API}/token`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ address, password })
});
const loginData = await loginRes.json();
userData = { address, password, token: loginData.token };
document.getElementById('mail-address').value = address;
checkInbox();
}
} catch (err) {
alert("Error: " + err);
}
}
async function checkInbox() {
if (!userData.token) return;
document.getElementById('status').innerText = "Checking...";
try {
const res = await fetch(`${API}/messages`, {
headers: { 'Authorization': `Bearer ${userData.token}` }
});
const data = await res.json();
const messages = data['hydra:member'];
const list = document.getElementById('inbox-list');
if (messages.length > 0) {
list.innerHTML = "";
messages.forEach(msg => {
const div = document.createElement('div');
div.className = "p-4 bg-slate-700 rounded-lg border-l-4 border-blue-500 cursor-pointer hover:bg-slate-600";
div.innerHTML = `<strong>From: ${msg.from.address}</strong><br><small>${msg.subject}</small>`;
div.onclick = () => alert("Email Content check karne ke liye API call expand karein.");
list.appendChild(div);
});
}
} catch (err) { console.log(err); }
document.getElementById('status').innerText = "Auto-checking...";
setTimeout(checkInbox, 10000);
}
function copyEmail() {
const input = document.getElementById('mail-address');
input.select();
document.execCommand('copy');
alert("Email copy ho gaya!");
}
window.onload = createNewEmail;
</script>
</body>
</html>