Spaces:
Sleeping
Sleeping
File size: 7,005 Bytes
6c78545 dceedb1 6c78545 dceedb1 6c78545 dceedb1 6c78545 dceedb1 6c78545 dceedb1 6c78545 dceedb1 6c78545 dceedb1 6c78545 dceedb1 6c78545 5ba7d72 dceedb1 6c78545 dceedb1 6c78545 dceedb1 6c78545 dceedb1 5ba7d72 6c78545 dceedb1 6c78545 dceedb1 6c78545 dceedb1 6c78545 dceedb1 6c78545 dceedb1 6c78545 5ba7d72 dceedb1 6c78545 d04c0a3 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 |
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Zenith | Social</title>
<script src="https://cdn.tailwindcss.com"></script>
<script src="https://cdn.jsdelivr.net/npm/@supabase/supabase-js@2"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bcryptjs/2.4.3/bcrypt.min.js"></script>
<link rel="stylesheet" href="/static/styles.css">
<script type="module" src="https://unpkg.com/ionicons@7.1.0/dist/ionicons/ionicons.esm.js"></script>
</head>
<body>
<div class="blob blob-1"></div>
<div class="blob blob-2"></div>
<div id="login-modal" class="modal-overlay open">
<div class="modal-box text-center">
<h1 class="text-3xl font-bold mb-8 tracking-[0.2em] text-cyan-400">ZENITH</h1>
<form id="login-form" class="space-y-4">
<input type="text" id="login-user" placeholder="Username" class="w-full bg-white/5 border border-white/10 p-3 rounded text-white focus:border-cyan-400 focus:outline-none">
<input type="password" id="login-pass" placeholder="Password" class="w-full bg-white/5 border border-white/10 p-3 rounded text-white focus:border-cyan-400 focus:outline-none">
<button type="submit" class="w-full bg-cyan-500/10 hover:bg-cyan-500/30 text-cyan-400 border border-cyan-500/50 p-3 rounded font-bold transition-all">ENTER SYSTEM</button>
</form>
<p id="login-error" class="text-red-500 text-xs mt-4 hidden"></p>
</div>
</div>
<div id="settings-modal" class="modal-overlay">
<div class="modal-box">
<h2 class="text-xl font-bold mb-4 border-b border-white/10 pb-2">Profile Settings</h2>
<div class="flex items-center justify-between mb-6">
<div>
<div class="font-bold">Discovery Mode</div>
<div class="text-xs text-white/50">Allow others to find me in "Find Friends"</div>
</div>
<label class="relative inline-flex items-center cursor-pointer">
<input type="checkbox" id="setting-discovery" class="sr-only peer">
<div class="w-11 h-6 bg-white/10 peer-focus:outline-none rounded-full peer peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all peer-checked:bg-cyan-500"></div>
</label>
</div>
<button id="save-settings" class="w-full bg-white/10 hover:bg-white/20 p-2 rounded">Save & Close</button>
</div>
</div>
<div id="admin-modal" class="modal-overlay">
<div class="modal-box relative border-red-500/30">
<h2 class="text-red-500 font-mono font-bold mb-6 text-center">/// ADMIN ///</h2>
<input type="text" id="admin-code" placeholder="CODE" class="w-full bg-black/50 border border-red-500/50 text-red-500 p-3 text-center tracking-[5px] uppercase mb-4 focus:outline-none">
<form id="admin-create-form" class="hidden space-y-3">
<input type="text" id="new-user" placeholder="New User" class="w-full bg-white/5 border border-white/10 p-2 text-white">
<input type="text" id="new-pass" placeholder="New Pass" class="w-full bg-white/5 border border-white/10 p-2 text-white">
<button type="submit" class="w-full bg-red-500/20 text-red-500 border border-red-500/50 p-2">CREATE</button>
</form>
</div>
</div>
<div class="app-grid hidden" id="app-interface">
<nav class="w-[70px] bg-black/40 border-r border-white/5 flex flex-col items-center py-4 gap-4 z-20 backdrop-blur-xl">
<button class="nav-btn active" data-tab="chats" title="My Chats">
<ion-icon name="chatbubbles-outline" class="text-2xl"></ion-icon>
</button>
<button class="nav-btn" data-tab="discovery" title="Find Friends">
<ion-icon name="planet-outline" class="text-2xl"></ion-icon>
</button>
<div class="flex-1"></div>
<button id="open-settings" class="nav-btn" title="Settings">
<ion-icon name="settings-outline" class="text-2xl"></ion-icon>
</button>
</nav>
<aside class="sidebar" style="width: 240px;">
<div class="p-4 border-b border-white/5 font-bold tracking-widest text-xs" id="sidebar-title">CHANNELS</div>
<div id="view-chats" class="channel-list p-2">
<div class="channel-item active" onclick="switchChannel('general')">
<span class="text-cyan-400">#</span> general
</div>
</div>
<div id="view-discovery" class="channel-list p-2 hidden">
<div class="text-xs text-white/30 mb-2 uppercase px-2">Looking for friends</div>
<div id="discovery-list" class="space-y-2">
</div>
</div>
<div class="user-panel mt-auto">
<div class="w-8 h-8 rounded-full bg-gradient-to-br from-cyan-500 to-blue-600"></div>
<div class="user-info ml-2 overflow-hidden">
<div id="current-username" class="text-sm font-bold truncate">...</div>
<div class="user-tag" id="admin-trigger">⚡ ADMIN</div>
</div>
</div>
</aside>
<main class="chat-area flex-1 flex flex-col relative bg-black/20">
<header class="chat-header">
<div class="flex items-center gap-2">
<h3 class="font-bold text-lg" id="chat-title"># general</h3>
<div id="voice-ui" class="hidden flex items-center gap-2 bg-black/40 px-2 py-1 rounded text-xs">
<div class="w-2 h-2 rounded-full bg-green-500 animate-pulse"></div>
<span id="voice-ping" class="font-mono text-cyan-400">0ms</span>
</div>
</div>
<button id="voice-toggle" class="p-2 bg-white/5 rounded-full hover:bg-white/10">
<ion-icon name="mic-outline"></ion-icon>
</button>
</header>
<div id="messages-container" class="messages-container custom-scrollbar"></div>
<form id="chat-form" class="p-4 bg-transparent shrink-0">
<input type="text" id="msg-input" autocomplete="off" placeholder="Message..."
class="w-full bg-[#252535] border border-white/5 rounded-xl p-3 text-white focus:outline-none focus:border-white/20 transition-all">
</form>
</main>
</div>
<script src="/static/script.js"></script>
</body>
</html> |