docto41 commited on
Commit
eb0db0e
·
verified ·
1 Parent(s): 83f59be

Add 2 files

Browse files
Files changed (2) hide show
  1. index.html +807 -324
  2. prompts.txt +11 -1
index.html CHANGED
@@ -3,383 +3,866 @@
3
  <head>
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>TV Hacker Pro - Accès Illimité</title>
7
  <script src="https://cdn.tailwindcss.com"></script>
8
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
9
  <style>
10
- @keyframes glitch {
11
- 0% { text-shadow: 2px 0 0 #ff00ff, -2px 0 0 #00ffff; }
12
- 25% { text-shadow: -2px 0 0 #ff00ff, 2px 0 0 #00ffff; }
13
- 50% { text-shadow: 2px 0 0 #ff00ff, -2px 0 0 #00ffff; }
14
- 75% { text-shadow: -2px 0 0 #ff00ff, 2px 0 0 #00ffff; }
15
- 100% { text-shadow: 2px 0 0 #ff00ff, -2px 0 0 #00ffff; }
16
  }
17
- .glitch-effect {
18
- animation: glitch 0.5s infinite;
 
19
  }
20
- .terminal-bg {
21
- background-color: #000;
22
- color: #0f0;
23
- font-family: 'Courier New', monospace;
 
24
  }
25
- .scanlines {
26
- position: relative;
27
- }
28
- .scanlines:after {
29
- content: "";
30
- position: absolute;
31
- top: 0;
32
- left: 0;
33
- width: 100%;
34
  height: 100%;
35
- background: linear-gradient(
36
- to bottom,
37
- transparent 50%,
38
- rgba(0, 255, 0, 0.05) 51%
39
- );
40
- background-size: 100% 4px;
41
- pointer-events: none;
42
  }
43
- .holographic {
44
- background: linear-gradient(135deg, rgba(0,255,0,0.1) 0%, rgba(0,100,0,0.2) 50%, rgba(0,255,0,0.1) 100%);
45
- box-shadow: 0 0 20px rgba(0, 255, 0, 0.3);
46
  }
47
- .blink {
48
- animation: blink 1s step-end infinite;
 
49
  }
50
- @keyframes blink {
51
- from, to { opacity: 1; }
52
- 50% { opacity: 0; }
53
  }
54
- .tv-screen {
55
- background: linear-gradient(135deg, #111 0%, #000 100%);
56
- border: 8px solid #333;
57
- border-radius: 5px;
58
- box-shadow: inset 0 0 50px rgba(0,255,0,0.2), 0 0 30px rgba(0,255,0,0.5);
 
 
59
  }
60
  </style>
61
  </head>
62
- <body class="terminal-bg bg-black text-green-500">
63
- <!-- Header -->
64
  <div class="container mx-auto px-4 py-8">
65
- <div class="text-center mb-8">
66
- <h1 class="text-4xl md:text-5xl font-bold mb-4 glitch-effect">
67
- <i class="fas fa-tv mr-2"></i> TV HACKER PRO
 
68
  </h1>
69
- <p class="text-xl text-green-300 mb-4">
70
- Accès Illimité à Toutes les Chaînes Payantes
71
  </p>
72
- <div class="w-full max-w-2xl mx-auto bg-black bg-opacity-70 p-4 rounded-lg border border-green-500 mb-6">
73
- <div class="flex justify-between items-center mb-2">
74
- <span class="text-green-400">STATUS:</span>
75
- <span class="text-yellow-400 font-bold" id="connectionStatus">CONNECTING...</span>
76
- </div>
77
- <div class="w-full bg-gray-800 rounded-full h-2.5">
78
- <div class="bg-green-600 h-2.5 rounded-full" id="progressBar" style="width: 0%"></div>
79
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
80
  </div>
81
- </div>
82
 
83
- <!-- Main Interface -->
84
- <div class="grid grid-cols-1 lg:grid-cols-3 gap-6">
85
- <!-- TV Screen -->
86
- <div class="lg:col-span-2 tv-screen p-4 h-96 lg:h-auto">
87
- <div class="h-full flex flex-col">
88
- <div class="flex-grow flex items-center justify-center scanlines" id="tvDisplay">
89
- <div class="text-center" id="tvContent">
90
- <i class="fas fa-satellite-dish text-5xl text-green-500 mb-4"></i>
91
- <p class="text-green-400">Initialisation du système...</p>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
92
  </div>
93
  </div>
94
- <div class="mt-4 grid grid-cols-5 gap-2">
95
- <button class="bg-green-900 hover:bg-green-800 text-white py-1 px-2 rounded text-xs">
96
- <i class="fas fa-power-off"></i>
97
- </button>
98
- <button class="bg-green-900 hover:bg-green-800 text-white py-1 px-2 rounded text-xs">
99
- <i class="fas fa-search"></i>
100
- </button>
101
- <button class="bg-green-900 hover:bg-green-800 text-white py-1 px-2 rounded text-xs">
102
- <i class="fas fa-list"></i>
103
- </button>
104
- <button class="bg-green-900 hover:bg-green-800 text-white py-1 px-2 rounded text-xs">
105
- <i class="fas fa-cog"></i>
106
- </button>
107
- <button class="bg-green-900 hover:bg-green-800 text-white py-1 px-2 rounded text-xs">
108
- <i class="fas fa-lock-open"></i>
109
- </button>
110
  </div>
111
  </div>
112
- </div>
113
 
114
- <!-- Control Panel -->
115
- <div class="bg-black bg-opacity-70 p-4 rounded-lg border border-green-500 h-96 lg:h-auto overflow-y-auto">
116
- <h2 class="text-xl font-bold mb-4 text-green-400 border-b border-green-500 pb-2">
117
- <i class="fas fa-terminal mr-2"></i> Console de Contrôle
118
- </h2>
119
- <div class="mb-4">
120
- <div class="flex items-center mb-2">
121
- <span class="text-green-400 mr-2">root@tvhack:~$</span>
122
- <span class="blink" id="commandCursor">_</span>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
123
  </div>
124
- <div class="terminal-output mb-4 text-sm h-48 overflow-y-auto" id="terminalOutput">
125
- <p>> Initialisation du système TV Hacker Pro v4.2</p>
126
- <p>> Chargement des modules satellites...</p>
127
- <p>> Analyse des fréquences disponibles...</p>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
128
  </div>
129
  </div>
130
- <div class="grid grid-cols-3 gap-2">
131
- <button class="bg-green-800 hover:bg-green-700 text-white py-2 rounded text-xs" onclick="runCommand('scan')">
132
- SCAN
133
- </button>
134
- <button class="bg-green-800 hover:bg-green-700 text-white py-2 rounded text-xs" onclick="runCommand('decrypt')">
135
- DECRYPT
136
- </button>
137
- <button class="bg-green-800 hover:bg-green-700 text-white py-2 rounded text-xs" onclick="runCommand('bypass')">
138
- BYPASS
139
- </button>
140
- <button class="bg-green-800 hover:bg-green-700 text-white py-2 rounded text-xs" onclick="runCommand('channels')">
141
- CHANNELS
142
- </button>
143
- <button class="bg-green-800 hover:bg-green-700 text-white py-2 rounded text-xs" onclick="runCommand('boost')">
144
- BOOST
145
- </button>
146
- <button class="bg-green-800 hover:bg-green-700 text-white py-2 rounded text-xs" onclick="runCommand('hide')">
147
- HIDE
148
- </button>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
149
  </div>
150
- </div>
151
- </div>
152
 
153
- <!-- Channel Grid -->
154
- <div class="mt-8">
155
- <h2 class="text-xl font-bold mb-4 text-green-400">
156
- <i class="fas fa-broadcast-tower mr-2"></i> Chaînes Disponibles
157
- </h2>
158
- <div class="grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-6 gap-4" id="channelGrid">
159
- <!-- Channels will be added by JavaScript -->
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
160
  </div>
161
- </div>
162
 
163
- <!-- Warning -->
164
- <div class="mt-8 p-4 bg-red-900 bg-opacity-30 border border-red-500 rounded-lg text-center">
165
- <p class="text-red-400 font-bold">
166
- <i class="fas fa-exclamation-triangle mr-2"></i> ATTENTION: Ceci est une simulation. L'accès non autorisé à des contenus payants est illégal.
 
 
 
 
 
167
  </p>
168
- </div>
169
  </div>
170
 
171
  <script>
172
- // Simulate connection progress
173
- let progress = 0;
174
- const progressInterval = setInterval(() => {
175
- progress += Math.floor(Math.random() * 10) + 5;
176
- if (progress >= 100) {
177
- progress = 100;
178
- clearInterval(progressInterval);
179
- document.getElementById('connectionStatus').textContent = "CONNECTED";
180
- document.getElementById('connectionStatus').className = "text-green-400 font-bold";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
181
 
182
- // Add connected message to terminal
183
- addTerminalOutput("> Connexion établie avec succès");
184
- addTerminalOutput("> Système prêt à l'emploi");
 
185
 
186
- // Load channels
187
- setTimeout(loadChannels, 1000);
188
- }
189
- document.getElementById('progressBar').style.width = `${progress}%`;
190
- }, 300);
191
-
192
- // TV Channels database
193
- const premiumChannels = [
194
- { name: "Canal+", logo: "fas fa-star", locked: false },
195
- { name: "Bein Sports", logo: "fas fa-futbol", locked: false },
196
- { name: "Netflix", logo: "fas fa-film", locked: true },
197
- { name: "Amazon Prime", logo: "fas fa-shopping-bag", locked: true },
198
- { name: "Disney+", logo: "fab fa-disney", locked: true },
199
- { name: "OCS", logo: "fas fa-video", locked: true },
200
- { name: "Molotov TV", logo: "fas fa-tv", locked: false },
201
- { name: "TF1", logo: "fas fa-1", locked: false },
202
- { name: "France 2", logo: "fas fa-2", locked: false },
203
- { name: "M6", logo: "fas fa-6", locked: false },
204
- { name: "Arte", logo: "fas fa-a", locked: false },
205
- { name: "C8", logo: "fas fa-8", locked: false },
206
- { name: "W9", logo: "fas fa-9", locked: false },
207
- { name: "TMC", logo: "fas fa-t", locked: false },
208
- { name: "NT1", logo: "fas fa-n", locked: false },
209
- { name: "NRJ12", logo: "fas fa-music", locked: false }
210
- ];
211
-
212
- // Load channels to UI
213
- function loadChannels() {
214
- const channelGrid = document.getElementById('channelGrid');
215
- channelGrid.innerHTML = '';
216
-
217
- premiumChannels.forEach(channel => {
218
- const channelCard = document.createElement('div');
219
- channelCard.className = `bg-black bg-opacity-70 p-3 rounded-lg border ${channel.locked ? 'border-red-500' : 'border-green-500'} text-center cursor-pointer hover:bg-opacity-50 transition-all`;
220
- channelCard.innerHTML = `
221
- <div class="text-3xl mb-2 ${channel.locked ? 'text-red-500' : 'text-green-500'}">
222
- <i class="${channel.logo}"></i>
223
  </div>
224
- <h3 class="font-bold ${channel.locked ? 'text-red-400' : 'text-green-400'}">${channel.name}</h3>
225
- ${channel.locked ? '<p class="text-xs text-red-400 mt-1">VERROUILLÉ</p>' : '<p class="text-xs text-green-400 mt-1">DISPONIBLE</p>'}
226
  `;
 
227
 
228
- channelCard.addEventListener('click', () => {
229
- if (channel.locked) {
230
- addTerminalOutput(`> Tentative de déverrouillage de ${channel.name}...`);
231
- setTimeout(() => {
232
- addTerminalOutput(`> ${channel.name}: Signal crypté détecté`);
233
- addTerminalOutput(`> Utilisation du module de décryptage...`);
234
-
235
- // Simulate decryption
236
- setTimeout(() => {
237
- const success = Math.random() > 0.3;
238
- if (success) {
239
- addTerminalOutput(`> SUCCÈS: ${channel.name} déverrouillé!`);
240
- channel.locked = false;
241
- loadChannels();
242
-
243
- // Show on TV
244
- document.getElementById('tvContent').innerHTML = `
245
- <div class="text-green-500 text-4xl mb-2">
246
- <i class="${channel.logo}"></i>
247
- </div>
248
- <h3 class="text-xl font-bold text-green-400">${channel.name}</h3>
249
- <p class="text-green-300 mt-2">Lecture en cours...</p>
250
- <p class="text-xs text-green-500 mt-4">Signal stabilisé</p>
251
- `;
252
- } else {
253
- addTerminalOutput(`> ÉCHEC: Impossible de décrypter ${channel.name}`);
254
- addTerminalOutput(`> Tentative signalée au fournisseur`);
255
-
256
- // Show warning on TV
257
- document.getElementById('tvContent').innerHTML = `
258
- <div class="text-red-500 text-4xl mb-2">
259
- <i class="fas fa-lock"></i>
260
- </div>
261
- <h3 class="text-xl font-bold text-red-400">ACCÈS REFUSÉ</h3>
262
- <p class="text-red-300 mt-2">Signal crypté détecté</p>
263
- <p class="text-xs text-red-500 mt-4">Tentative de piratage enregistrée</p>
264
- `;
265
- }
266
- }, 2000);
267
- }, 500);
268
  } else {
269
- // Show channel on TV
270
- document.getElementById('tvContent').innerHTML = `
271
- <div class="text-green-500 text-4xl mb-2">
272
- <i class="${channel.logo}"></i>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
273
  </div>
274
- <h3 class="text-xl font-bold text-green-400">${channel.name}</h3>
275
- <p class="text-green-300 mt-2">Lecture en cours...</p>
276
- <p class="text-xs text-green-500 mt-4">Signal stable</p>
277
  `;
278
- addTerminalOutput(`> Affichage de ${channel.name}`);
279
  }
280
- });
281
-
282
- channelGrid.appendChild(channelCard);
283
  });
284
- }
285
-
286
- // Terminal functions
287
- function addTerminalOutput(text) {
288
- const output = document.getElementById('terminalOutput');
289
- const p = document.createElement('p');
290
- p.innerHTML = `> ${text}`;
291
- output.appendChild(p);
292
- output.scrollTop = output.scrollHeight;
293
- }
294
 
295
- function runCommand(cmd) {
296
- addTerminalOutput(`Exécution de la commande: ${cmd}`);
297
-
298
- switch(cmd) {
299
- case 'scan':
300
- addTerminalOutput("Analyse des fréquences satellites...");
301
- setTimeout(() => {
302
- addTerminalOutput("Trouvé 142 chaînes cryptées");
303
- addTerminalOutput("32 chaînes en clair détectées");
304
- }, 800);
305
- break;
306
-
307
- case 'decrypt':
308
- addTerminalOutput("Lancement du module de décryptage...");
309
- setTimeout(() => {
310
- addTerminalOutput("Recherche de vulnérabilités...");
311
- setTimeout(() => {
312
- const success = Math.random() > 0.5;
313
- if (success) {
314
- addTerminalOutput("Décryptage réussi! 3 chaînes déverrouillées");
315
- // Unlock some random channels
316
- premiumChannels.filter(c => c.locked)
317
- .sort(() => 0.5 - Math.random())
318
- .slice(0, 3)
319
- .forEach(c => c.locked = false);
320
- loadChannels();
321
- } else {
322
- addTerminalOutput("Échec du décryptage - Signal trop fort");
323
- }
324
- }, 1200);
325
- }, 600);
326
- break;
327
 
328
- case 'bypass':
329
- addTerminalOutput("Tentative de contournement des protections...");
330
- setTimeout(() => {
331
- addTerminalOutput("Utilisation de la méthode VPN-Over-Satellite...");
332
- setTimeout(() => {
333
- addTerminalOutput("Contournement partiellement réussi");
334
- addTerminalOutput("Accès instable obtenu à certaines chaînes");
335
- }, 1500);
336
- }, 800);
337
- break;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
338
 
339
- case 'channels':
340
- addTerminalOutput("Liste des chaînes disponibles:");
341
- premiumChannels.slice(0, 5).forEach(c => {
342
- addTerminalOutput(`${c.name.padEnd(12)} ${c.locked ? '[VERROUILLÉ]' : '[DISPONIBLE]'}`);
343
- });
344
- addTerminalOutput(`... ${premiumChannels.length - 5} autres chaînes`);
345
- break;
 
 
346
 
347
- case 'boost':
348
- addTerminalOutput("Boost du signal en cours...");
349
- setTimeout(() => {
350
- document.getElementById('tvContent').innerHTML = `
351
- <div class="text-yellow-500 text-4xl mb-2">
352
- <i class="fas fa-bolt"></i>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
353
  </div>
354
- <h3 class="text-xl font-bold text-yellow-400">BOOST ACTIVÉ</h3>
355
- <p class="text-yellow-300 mt-2">Signal amplifié de 220%</p>
356
- <p class="text-xs text-yellow-500 mt-4">Risque de détection accru</p>
357
  `;
358
- addTerminalOutput("Signal boosté avec succès");
359
- addTerminalOutput("Attention: Trafic non chiffré détectable");
360
- }, 1000);
361
- break;
362
 
363
- case 'hide':
364
- addTerminalOutput("Activation du mode furtif...");
365
- setTimeout(() => {
366
- addTerminalOutput("Brouillage de l'adresse IP...");
367
- setTimeout(() => {
368
- addTerminalOutput("Mode furtif activé - Trafic masqué");
369
- }, 800);
370
- }, 500);
371
- break;
372
 
373
- default:
374
- addTerminalOutput(`Commande inconnue: ${cmd}`);
375
- }
376
- }
377
-
378
- // Blinking cursor effect
379
- setInterval(() => {
380
- const cursor = document.getElementById('commandCursor');
381
- cursor.style.visibility = cursor.style.visibility === 'hidden' ? 'visible' : 'hidden';
382
- }, 500);
383
  </script>
384
  <p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=docto41/deepsite-pro" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
385
  </html>
 
3
  <head>
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Suite d'Outils Web Gratuits</title>
7
  <script src="https://cdn.tailwindcss.com"></script>
8
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
9
  <style>
10
+ .tool-card {
11
+ transition: all 0.3s ease;
12
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
 
 
 
13
  }
14
+ .tool-card:hover {
15
+ transform: translateY(-3px);
16
+ box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
17
  }
18
+ .progress-bar {
19
+ height: 6px;
20
+ border-radius: 3px;
21
+ background-color: #E5E7EB;
22
+ overflow: hidden;
23
  }
24
+ .progress-fill {
 
 
 
 
 
 
 
 
25
  height: 100%;
26
+ border-radius: 3px;
27
+ background-color: #3B82F6;
28
+ transition: width 0.5s ease;
29
+ }
30
+ .tab-content {
31
+ display: none;
 
32
  }
33
+ .tab-content.active {
34
+ display: block;
35
+ animation: fadeIn 0.5s ease;
36
  }
37
+ @keyframes fadeIn {
38
+ from { opacity: 0; }
39
+ to { opacity: 1; }
40
  }
41
+ .ssl-status-valid {
42
+ background-color: #D1FAE5;
43
+ color: #065F46;
44
  }
45
+ .ssl-status-expired {
46
+ background-color: #FEE2E2;
47
+ color: #B91C1C;
48
+ }
49
+ .ssl-status-warning {
50
+ background-color: #FEF3C7;
51
+ color: #92400E;
52
  }
53
  </style>
54
  </head>
55
+ <body class="bg-gray-50 min-h-screen">
 
56
  <div class="container mx-auto px-4 py-8">
57
+ <!-- Header -->
58
+ <header class="text-center mb-12">
59
+ <h1 class="text-4xl font-bold mb-4 text-gray-800">
60
+ <i class="fas fa-tools text-blue-500 mr-2"></i> Suite d'Outils Web Gratuits
61
  </h1>
62
+ <p class="text-xl text-gray-600 max-w-2xl mx-auto">
63
+ Tous les outils essentiels pour gérer votre présence en ligne - 100% gratuit
64
  </p>
65
+ </header>
66
+
67
+ <!-- Main Content -->
68
+ <main class="bg-white rounded-xl shadow-lg overflow-hidden">
69
+ <!-- Navigation Tabs -->
70
+ <div class="flex overflow-x-auto border-b border-gray-200">
71
+ <button class="tab-btn px-6 py-4 font-medium text-gray-600 hover:text-blue-500 border-b-2 border-transparent hover:border-blue-500 transition active-tab" data-tab="domain">
72
+ <i class="fas fa-globe mr-2"></i> Domaines
73
+ </button>
74
+ <button class="tab-btn px-6 py-4 font-medium text-gray-600 hover:text-blue-500 border-b-2 border-transparent hover:border-blue-500 transition" data-tab="ssl">
75
+ <i class="fas fa-lock mr-2"></i> SSL
76
+ </button>
77
+ <button class="tab-btn px-6 py-4 font-medium text-gray-600 hover:text-blue-500 border-b-2 border-transparent hover:border-blue-500 transition" data-tab="dns">
78
+ <i class="fas fa-server mr-2"></i> DNS
79
+ </button>
80
+ <button class="tab-btn px-6 py-4 font-medium text-gray-600 hover:text-blue-500 border-b-2 border-transparent hover:border-blue-500 transition" data-tab="hosting">
81
+ <i class="fas fa-cloud mr-2"></i> Hébergement
82
+ </button>
83
+ <button class="tab-btn px-6 py-4 font-medium text-gray-600 hover:text-blue-500 border-b-2 border-transparent hover:border-blue-500 transition" data-tab="tools">
84
+ <i class="fas fa-wrench mr-2"></i> Outils
85
+ </button>
86
  </div>
 
87
 
88
+ <!-- Tab Contents -->
89
+ <div class="p-6">
90
+ <!-- Domain Tab -->
91
+ <div id="domain" class="tab-content active">
92
+ <h2 class="text-2xl font-bold mb-6 text-gray-800">
93
+ <i class="fas fa-globe text-blue-500 mr-2"></i> Enregistrement de Domaines Gratuits
94
+ </h2>
95
+
96
+ <div class="grid grid-cols-1 md:grid-cols-2 gap-6 mb-8">
97
+ <div class="bg-blue-50 p-6 rounded-lg">
98
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
99
+ <i class="fas fa-search mr-2 text-blue-500"></i> Vérifier la disponibilité
100
+ </h3>
101
+ <div class="flex mb-4">
102
+ <input type="text" id="domainInput" placeholder="votredomaine"
103
+ class="flex-1 rounded-l-lg border-gray-300 border p-3 focus:ring-blue-500 focus:border-blue-500">
104
+ <select id="domainTld" class="border-gray-300 border p-3">
105
+ <option>.com</option>
106
+ <option>.net</option>
107
+ <option>.org</option>
108
+ <option>.xyz</option>
109
+ <option>.tk</option>
110
+ <option>.ml</option>
111
+ <option>.ga</option>
112
+ <option>.cf</option>
113
+ <option>.gq</option>
114
+ </select>
115
+ <button id="checkDomainBtn" class="bg-blue-500 hover:bg-blue-600 text-white px-4 rounded-r-lg">
116
+ <i class="fas fa-search"></i>
117
+ </button>
118
+ </div>
119
+ <div id="domainResults" class="hidden">
120
+ <!-- Results will be shown here -->
121
+ </div>
122
+ </div>
123
+
124
+ <div class="bg-green-50 p-6 rounded-lg">
125
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
126
+ <i class="fas fa-gift mr-2 text-green-500"></i> Domaines Gratuits
127
+ </h3>
128
+ <p class="mb-4 text-gray-700">Services offrant des domaines gratuits :</p>
129
+ <ul class="space-y-3">
130
+ <li class="flex items-center">
131
+ <i class="fas fa-check-circle text-green-500 mr-2"></i>
132
+ <span>Freenom (.tk, .ml, .ga, .cf, .gq)</span>
133
+ </li>
134
+ <li class="flex items-center">
135
+ <i class="fas fa-check-circle text-green-500 mr-2"></i>
136
+ <span>Dot.tk (domaines .tk)</span>
137
+ </li>
138
+ <li class="flex items-center">
139
+ <i class="fas fa-check-circle text-green-500 mr-2"></i>
140
+ <span>InfinityFree (avec hébergement)</span>
141
+ </li>
142
+ <li class="flex items-center">
143
+ <i class="fas fa-check-circle text-green-500 mr-2"></i>
144
+ <span>FreeNom (extension limitées)</span>
145
+ </li>
146
+ </ul>
147
+ <a href="#" class="inline-block mt-4 text-blue-500 hover:underline">
148
+ <i class="fas fa-external-link-alt mr-1"></i> Voir les offres actuelles
149
+ </a>
150
+ </div>
151
+ </div>
152
+
153
+ <div class="bg-yellow-50 p-6 rounded-lg">
154
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
155
+ <i class="fas fa-info-circle text-yellow-500 mr-2"></i> Guide d'enregistrement
156
+ </h3>
157
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-6">
158
+ <div class="bg-white p-4 rounded-lg shadow">
159
+ <h4 class="font-medium mb-2">1. Choisir un nom</h4>
160
+ <p class="text-sm text-gray-600">Court, mémorable, sans caractères spéciaux</p>
161
+ </div>
162
+ <div class="bg-white p-4 rounded-lg shadow">
163
+ <h4 class="font-medium mb-2">2. Vérifier la disponibilité</h4>
164
+ <p class="text-sm text-gray-600">Utilisez notre outil ci-dessus</p>
165
+ </div>
166
+ <div class="bg-white p-4 rounded-lg shadow">
167
+ <h4 class="font-medium mb-2">3. S'inscrire sur un registraire</h4>
168
+ <p class="text-sm text-gray-600">Freenom pour les gratuits, Namecheap/Google pour les payants</p>
169
+ </div>
170
+ </div>
171
+ </div>
172
+ </div>
173
+
174
+ <!-- SSL Tab -->
175
+ <div id="ssl" class="tab-content">
176
+ <h2 class="text-2xl font-bold mb-6 text-gray-800">
177
+ <i class="fas fa-lock text-blue-500 mr-2"></i> Certificats SSL Gratuits
178
+ </h2>
179
+
180
+ <div class="grid grid-cols-1 md:grid-cols-2 gap-6 mb-8">
181
+ <div class="bg-blue-50 p-6 rounded-lg">
182
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
183
+ <i class="fas fa-search mr-2 text-blue-500"></i> Vérifier un certificat SSL
184
+ </h3>
185
+ <div class="flex mb-4">
186
+ <input type="text" id="sslInput" placeholder="https://votresite.com"
187
+ class="flex-1 rounded-l-lg border-gray-300 border p-3 focus:ring-blue-500 focus:border-blue-500">
188
+ <button id="checkSslBtn" class="bg-blue-500 hover:bg-blue-600 text-white px-4 rounded-r-lg">
189
+ <i class="fas fa-search"></i>
190
+ </button>
191
+ </div>
192
+ <div id="sslResults" class="hidden">
193
+ <!-- Results will be shown here -->
194
+ </div>
195
+ </div>
196
+
197
+ <div class="bg-green-50 p-6 rounded-lg">
198
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
199
+ <i class="fas fa-certificate mr-2 text-green-500"></i> Fournisseurs SSL Gratuits
200
+ </h3>
201
+ <div class="space-y-4">
202
+ <div class="bg-white p-4 rounded-lg shadow">
203
+ <h4 class="font-medium mb-1">Let's Encrypt</h4>
204
+ <p class="text-sm text-gray-600 mb-2">Le plus populaire, valable 90 jours, renouvelable automatiquement</p>
205
+ <a href="#" class="text-blue-500 text-sm hover:underline">
206
+ <i class="fas fa-external-link-alt mr-1"></i> Obtenir un certificat
207
+ </a>
208
+ </div>
209
+ <div class="bg-white p-4 rounded-lg shadow">
210
+ <h4 class="font-medium mb-1">Cloudflare SSL</h4>
211
+ <p class="text-sm text-gray-600 mb-2">SSL flexible avec proxy, idéal pour les débutants</p>
212
+ <a href="#" class="text-blue-500 text-sm hover:underline">
213
+ <i class="fas fa-external-link-alt mr-1"></i> Configurer avec Cloudflare
214
+ </a>
215
+ </div>
216
+ <div class="bg-white p-4 rounded-lg shadow">
217
+ <h4 class="font-medium mb-1">ZeroSSL</h4>
218
+ <p class="text-sm text-gray-600 mb-2">Interface simple, certificats de 90 jours</p>
219
+ <a href="#" class="text-blue-500 text-sm hover:underline">
220
+ <i class="fas fa-external-link-alt mr-1"></i> Créer un certificat
221
+ </a>
222
+ </div>
223
+ </div>
224
  </div>
225
  </div>
226
+
227
+ <div class="bg-purple-50 p-6 rounded-lg">
228
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
229
+ <i class="fas fa-question-circle text-purple-500 mr-2"></i> FAQ SSL
230
+ </h3>
231
+ <div class="space-y-4">
232
+ <div class="bg-white p-4 rounded-lg shadow">
233
+ <h4 class="font-medium mb-2">Pourquoi ai-je besoin d'un SSL ?</h4>
234
+ <p class="text-sm text-gray-600">Les certificats SSL chiffrent les données entre le serveur et le navigateur, protégeant les informations sensibles et améliorant le référencement.</p>
235
+ </div>
236
+ <div class="bg-white p-4 rounded-lg shadow">
237
+ <h4 class="font-medium mb-2">Comment installer un certificat SSL ?</h4>
238
+ <p class="text-sm text-gray-600">La méthode varie selon votre hébergeur. La plupart des panneaux modernes (cPanel, Plesk) proposent des installations en un clic pour Let's Encrypt.</p>
239
+ </div>
240
+ </div>
 
241
  </div>
242
  </div>
 
243
 
244
+ <!-- DNS Tab -->
245
+ <div id="dns" class="tab-content">
246
+ <h2 class="text-2xl font-bold mb-6 text-gray-800">
247
+ <i class="fas fa-server text-blue-500 mr-2"></i> Gestion DNS Gratuite
248
+ </h2>
249
+
250
+ <div class="grid grid-cols-1 md:grid-cols-2 gap-6 mb-8">
251
+ <div class="bg-blue-50 p-6 rounded-lg">
252
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
253
+ <i class="fas fa-tachometer-alt mr-2 text-blue-500"></i> Test de Serveurs DNS
254
+ </h3>
255
+ <div class="mb-4">
256
+ <input type="text" id="dnsTestInput" placeholder="votredomaine.com"
257
+ class="w-full rounded-lg border-gray-300 border p-3 focus:ring-blue-500 focus:border-blue-500">
258
+ </div>
259
+ <button id="testDnsBtn" class="bg-blue-500 hover:bg-blue-600 text-white px-6 py-2 rounded-lg w-full">
260
+ <i class="fas fa-play mr-2"></i> Tester les DNS
261
+ </button>
262
+ <div id="dnsTestResults" class="mt-4 hidden">
263
+ <!-- Results will be shown here -->
264
+ </div>
265
+ </div>
266
+
267
+ <div class="bg-green-50 p-6 rounded-lg">
268
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
269
+ <i class="fas fa-cloud mr-2 text-green-500"></i> Services DNS Gratuits
270
+ </h3>
271
+ <div class="space-y-4">
272
+ <div class="bg-white p-4 rounded-lg shadow">
273
+ <h4 class="font-medium mb-1">Cloudflare DNS</h4>
274
+ <p class="text-sm text-gray-600 mb-2">Rapide, sécurisé, avec protection DDoS et CDN gratuit</p>
275
+ <a href="#" class="text-blue-500 text-sm hover:underline">
276
+ <i class="fas fa-external-link-alt mr-1"></i> Configurer
277
+ </a>
278
+ </div>
279
+ <div class="bg-white p-4 rounded-lg shadow">
280
+ <h4 class="font-medium mb-1">Google Cloud DNS</h4>
281
+ <p class="text-sm text-gray-600 mb-2">Fiable, intégration avec d'autres services Google</p>
282
+ <a href="#" class="text-blue-500 text-sm hover:underline">
283
+ <i class="fas fa-external-link-alt mr-1"></i> Configurer
284
+ </a>
285
+ </div>
286
+ <div class="bg-white p-4 rounded-lg shadow">
287
+ <h4 class="font-medium mb-1">Hurricane Electric</h4>
288
+ <p class="text-sm text-gray-600 mb-2">Service DNS avancé avec IPv6</p>
289
+ <a href="#" class="text-blue-500 text-sm hover:underline">
290
+ <i class="fas fa-external-link-alt mr-1"></i> Configurer
291
+ </a>
292
+ </div>
293
+ </div>
294
+ </div>
295
  </div>
296
+
297
+ <div class="bg-yellow-50 p-6 rounded-lg">
298
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
299
+ <i class="fas fa-cog mr-2 text-yellow-500"></i> Gestion des Enregistrements DNS
300
+ </h3>
301
+ <div class="bg-white p-4 rounded-lg shadow">
302
+ <div class="grid grid-cols-12 gap-4 mb-2 font-medium text-gray-700">
303
+ <div class="col-span-3">Type</div>
304
+ <div class="col-span-3">Nom</div>
305
+ <div class="col-span-4">Valeur</div>
306
+ <div class="col-span-2">Actions</div>
307
+ </div>
308
+ <div class="space-y-3">
309
+ <div class="grid grid-cols-12 gap-4 items-center">
310
+ <div class="col-span-3">
311
+ <select class="w-full border-gray-300 rounded p-2 text-sm">
312
+ <option>A</option>
313
+ <option>AAAA</option>
314
+ <option>CNAME</option>
315
+ <option>MX</option>
316
+ <option>TXT</option>
317
+ </select>
318
+ </div>
319
+ <div class="col-span-3">
320
+ <input type="text" placeholder="@ ou sous-domaine" class="w-full border-gray-300 rounded p-2 text-sm">
321
+ </div>
322
+ <div class="col-span-4">
323
+ <input type="text" placeholder="IP ou valeur" class="w-full border-gray-300 rounded p-2 text-sm">
324
+ </div>
325
+ <div class="col-span-2 flex space-x-2">
326
+ <button class="bg-green-500 text-white p-2 rounded text-sm">
327
+ <i class="fas fa-check"></i>
328
+ </button>
329
+ <button class="bg-red-500 text-white p-2 rounded text-sm">
330
+ <i class="fas fa-times"></i>
331
+ </button>
332
+ </div>
333
+ </div>
334
+ <div class="grid grid-cols-12 gap-4 items-center bg-gray-50 p-2 rounded">
335
+ <div class="col-span-3 text-sm">A</div>
336
+ <div class="col-span-3 text-sm">@</div>
337
+ <div class="col-span-4 text-sm">192.0.2.1</div>
338
+ <div class="col-span-2 flex space-x-2">
339
+ <button class="bg-blue-500 text-white p-2 rounded text-sm">
340
+ <i class="fas fa-edit"></i>
341
+ </button>
342
+ <button class="bg-red-500 text-white p-2 rounded text-sm">
343
+ <i class="fas fa-trash"></i>
344
+ </button>
345
+ </div>
346
+ </div>
347
+ </div>
348
+ <button class="mt-4 bg-blue-500 hover:bg-blue-600 text-white px-4 py-2 rounded text-sm">
349
+ <i class="fas fa-plus mr-1"></i> Ajouter un enregistrement
350
+ </button>
351
+ </div>
352
  </div>
353
  </div>
354
+
355
+ <!-- Hosting Tab -->
356
+ <div id="hosting" class="tab-content">
357
+ <h2 class="text-2xl font-bold mb-6 text-gray-800">
358
+ <i class="fas fa-cloud text-blue-500 mr-2"></i> Hébergement Web Gratuit
359
+ </h2>
360
+
361
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-6 mb-8">
362
+ <div class="bg-blue-50 p-6 rounded-lg">
363
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
364
+ <i class="fas fa-rocket mr-2 text-blue-500"></i> Hébergeurs Gratuits
365
+ </h3>
366
+ <div class="space-y-4">
367
+ <div class="bg-white p-4 rounded-lg shadow">
368
+ <h4 class="font-medium mb-1">InfinityFree</h4>
369
+ <p class="text-sm text-gray-600 mb-2">400 Go espace, bande passante illimitée, PHP/MySQL</p>
370
+ <a href="#" class="text-blue-500 text-sm hover:underline">
371
+ <i class="fas fa-external-link-alt mr-1"></i> Visiter
372
+ </a>
373
+ </div>
374
+ <div class="bg-white p-4 rounded-lg shadow">
375
+ <h4 class="font-medium mb-1">000webhost</h4>
376
+ <p class="text-sm text-gray-600 mb-2">300 Mo espace, 3 Go bande passante, cPanel</p>
377
+ <a href="#" class="text-blue-500 text-sm hover:underline">
378
+ <i class="fas fa-external-link-alt mr-1"></i> Visiter
379
+ </a>
380
+ </div>
381
+ <div class="bg-white p-4 rounded-lg shadow">
382
+ <h4 class="font-medium mb-1">FreeHostia</h4>
383
+ <p class="text-sm text-gray-600 mb-2">250 Mo espace, 6 Go bande passante, 5 bases MySQL</p>
384
+ <a href="#" class="text-blue-500 text-sm hover:underline">
385
+ <i class="fas fa-external-link-alt mr-1"></i> Visiter
386
+ </a>
387
+ </div>
388
+ </div>
389
+ </div>
390
+
391
+ <div class="bg-green-50 p-6 rounded-lg">
392
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
393
+ <i class="fas fa-database mr-2 text-green-500"></i> Bases de Données Gratuites
394
+ </h3>
395
+ <div class="space-y-4">
396
+ <div class="bg-white p-4 rounded-lg shadow">
397
+ <h4 class="font-medium mb-1">MongoDB Atlas</h4>
398
+ <p class="text-sm text-gray-600 mb-2">512 Mo de stockage gratuit, idéal pour les applications</p>
399
+ <a href="#" class="text-blue-500 text-sm hover:underline">
400
+ <i class="fas fa-external-link-alt mr-1"></i> Configurer
401
+ </a>
402
+ </div>
403
+ <div class="bg-white p-4 rounded-lg shadow">
404
+ <h4 class="font-medium mb-1">Firebase</h4>
405
+ <p class="text-sm text-gray-600 mb-2">Base NoSQL temps réel, 1 Go de stockage</p>
406
+ <a href="#" class="text-blue-500 text-sm hover:underline">
407
+ <i class="fas fa-external-link-alt mr-1"></i> Configurer
408
+ </a>
409
+ </div>
410
+ <div class="bg-white p-4 rounded-lg shadow">
411
+ <h4 class="font-medium mb-1">ElephantSQL</h4>
412
+ <p class="text-sm text-gray-600 mb-2">PostgreSQL gratuit avec 20 Mo de stockage</p>
413
+ <a href="#" class="text-blue-500 text-sm hover:underline">
414
+ <i class="fas fa-external-link-alt mr-1"></i> Configurer
415
+ </a>
416
+ </div>
417
+ </div>
418
+ </div>
419
+
420
+ <div class="bg-purple-50 p-6 rounded-lg">
421
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
422
+ <i class="fas fa-upload mr-2 text-purple-500"></i> Déployer un Site
423
+ </h3>
424
+ <div class="space-y-4">
425
+ <div class="bg-white p-4 rounded-lg shadow">
426
+ <h4 class="font-medium mb-1">Via FTP</h4>
427
+ <p class="text-sm text-gray-600 mb-2">Utilisez FileZilla avec les identifiants provided by your host</p>
428
+ <div class="flex space-x-2">
429
+ <input type="text" placeholder="Serveur FTP" class="flex-1 border-gray-300 rounded p-2 text-sm">
430
+ <button class="bg-blue-500 text-white p-2 rounded text-sm">
431
+ <i class="fas fa-link"></i>
432
+ </button>
433
+ </div>
434
+ </div>
435
+ <div class="bg-white p-4 rounded-lg shadow">
436
+ <h4 class="font-medium mb-1">Via GitHub</h4>
437
+ <p class="text-sm text-gray-600 mb-2">Certains hébergeurs permettent le déploiement depuis un dépôt GitHub</p>
438
+ <div class="flex space-x-2">
439
+ <input type="text" placeholder="URL du dépôt" class="flex-1 border-gray-300 rounded p-2 text-sm">
440
+ <button class="bg-blue-500 text-white p-2 rounded text-sm">
441
+ <i class="fas fa-code-branch"></i>
442
+ </button>
443
+ </div>
444
+ </div>
445
+ </div>
446
+ </div>
447
+ </div>
448
  </div>
 
 
449
 
450
+ <!-- Tools Tab -->
451
+ <div id="tools" class="tab-content">
452
+ <h2 class="text-2xl font-bold mb-6 text-gray-800">
453
+ <i class="fas fa-wrench text-blue-500 mr-2"></i> Outils Utiles
454
+ </h2>
455
+
456
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-6">
457
+ <div class="bg-blue-50 p-6 rounded-lg tool-card">
458
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
459
+ <i class="fas fa-search mr-2 text-blue-500"></i> WHOIS
460
+ </h3>
461
+ <p class="mb-4 text-gray-700">Recherchez les informations d'enregistrement d'un domaine</p>
462
+ <div class="flex">
463
+ <input type="text" placeholder="votredomaine.com"
464
+ class="flex-1 rounded-l-lg border-gray-300 border p-3 focus:ring-blue-500 focus:border-blue-500">
465
+ <button class="bg-blue-500 hover:bg-blue-600 text-white px-4 rounded-r-lg">
466
+ <i class="fas fa-search"></i>
467
+ </button>
468
+ </div>
469
+ </div>
470
+
471
+ <div class="bg-green-50 p-6 rounded-lg tool-card">
472
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
473
+ <i class="fas fa-exchange-alt mr-2 text-green-500"></i> Convertisseur IP
474
+ </h3>
475
+ <p class="mb-4 text-gray-700">Convertir entre adresse IP et nom de domaine</p>
476
+ <div class="flex">
477
+ <input type="text" placeholder="IP ou domaine"
478
+ class="flex-1 rounded-l-lg border-gray-300 border p-3 focus:ring-green-500 focus:border-green-500">
479
+ <button class="bg-green-500 hover:bg-green-600 text-white px-4 rounded-r-lg">
480
+ <i class="fas fa-exchange-alt"></i>
481
+ </button>
482
+ </div>
483
+ </div>
484
+
485
+ <div class="bg-purple-50 p-6 rounded-lg tool-card">
486
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
487
+ <i class="fas fa-shield-alt mr-2 text-purple-500"></i> Test de Sécurité
488
+ </h3>
489
+ <p class="mb-4 text-gray-700">Vérifiez la sécurité de votre site web</p>
490
+ <div class="flex">
491
+ <input type="text" placeholder="https://votresite.com"
492
+ class="flex-1 rounded-l-lg border-gray-300 border p-3 focus:ring-purple-500 focus:border-purple-500">
493
+ <button class="bg-purple-500 hover:bg-purple-600 text-white px-4 rounded-r-lg">
494
+ <i class="fas fa-shield-alt"></i>
495
+ </button>
496
+ </div>
497
+ </div>
498
+
499
+ <div class="bg-yellow-50 p-6 rounded-lg tool-card">
500
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
501
+ <i class="fas fa-compress-alt mr-2 text-yellow-500"></i> Minifier
502
+ </h3>
503
+ <p class="mb-4 text-gray-700">Minifiez votre CSS, JS et HTML</p>
504
+ <select class="w-full border-gray-300 rounded p-3 mb-2">
505
+ <option>CSS</option>
506
+ <option>JavaScript</option>
507
+ <option>HTML</option>
508
+ </select>
509
+ <button class="w-full bg-yellow-500 hover:bg-yellow-600 text-white px-4 py-2 rounded">
510
+ <i class="fas fa-file-upload mr-1"></i> Sélectionner un fichier
511
+ </button>
512
+ </div>
513
+
514
+ <div class="bg-red-50 p-6 rounded-lg tool-card">
515
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
516
+ <i class="fas fa-robot mr-2 text-red-500"></i> Test SEO
517
+ </h3>
518
+ <p class="mb-4 text-gray-700">Analysez les facteurs SEO de votre site</p>
519
+ <div class="flex">
520
+ <input type="text" placeholder="https://votresite.com"
521
+ class="flex-1 rounded-l-lg border-gray-300 border p-3 focus:ring-red-500 focus:border-red-500">
522
+ <button class="bg-red-500 hover:bg-red-600 text-white px-4 rounded-r-lg">
523
+ <i class="fas fa-chart-line"></i>
524
+ </button>
525
+ </div>
526
+ </div>
527
+
528
+ <div class="bg-indigo-50 p-6 rounded-lg tool-card">
529
+ <h3 class="text-xl font-semibold mb-4 text-gray-800">
530
+ <i class="fas fa-qrcode mr-2 text-indigo-500"></i> Générateur QR Code
531
+ </h3>
532
+ <p class="mb-4 text-gray-700">Créez un QR Code pour votre URL</p>
533
+ <div class="flex">
534
+ <input type="text" placeholder="https://votresite.com"
535
+ class="flex-1 rounded-l-lg border-gray-300 border p-3 focus:ring-indigo-500 focus:border-indigo-500">
536
+ <button class="bg-indigo-500 hover:bg-indigo-600 text-white px-4 rounded-r-lg">
537
+ <i class="fas fa-qrcode"></i>
538
+ </button>
539
+ </div>
540
+ </div>
541
+ </div>
542
+ </div>
543
  </div>
544
+ </main>
545
 
546
+ <!-- Footer -->
547
+ <footer class="mt-12 pt-6 border-t border-gray-200 text-center text-gray-600">
548
+ <div class="mb-4">
549
+ <a href="#" class="text-blue-500 hover:underline mx-2">Conditions d'utilisation</a>
550
+ <a href="#" class="text-blue-500 hover:underline mx-2">Politique de confidentialité</a>
551
+ <a href="#" class="text-blue-500 hover:underline mx-2">Contact</a>
552
+ </div>
553
+ <p class="text-sm">
554
+ <i class="fas fa-info-circle text-blue-500 mr-1"></i> Tous les outils présentés sont 100% gratuits - Aucune garantie n'est fournie
555
  </p>
556
+ </footer>
557
  </div>
558
 
559
  <script>
560
+ // Wait for DOM to be fully loaded
561
+ document.addEventListener('DOMContentLoaded', function() {
562
+ // Tab switching functionality
563
+ const tabButtons = document.querySelectorAll('.tab-btn');
564
+ const tabContents = document.querySelectorAll('.tab-content');
565
+
566
+ tabButtons.forEach(btn => {
567
+ btn.addEventListener('click', function() {
568
+ // Remove active class from all tabs and contents
569
+ tabButtons.forEach(tb => {
570
+ tb.classList.remove('border-blue-500', 'text-blue-500');
571
+ tb.classList.add('border-transparent', 'text-gray-600');
572
+ });
573
+
574
+ tabContents.forEach(tc => {
575
+ tc.classList.remove('active');
576
+ });
577
+
578
+ // Add active class to clicked tab
579
+ this.classList.remove('border-transparent', 'text-gray-600');
580
+ this.classList.add('border-blue-500', 'text-blue-500');
581
+
582
+ // Show corresponding content
583
+ const tabId = this.getAttribute('data-tab');
584
+ document.getElementById(tabId).classList.add('active');
585
+ });
586
+ });
587
+
588
+ // Domain availability check
589
+ document.getElementById('checkDomainBtn').addEventListener('click', function() {
590
+ const domain = document.getElementById('domainInput').value.trim();
591
+ const tld = document.getElementById('domainTld').value;
592
 
593
+ if (!domain) {
594
+ alert('Veuillez entrer un nom de domaine');
595
+ return;
596
+ }
597
 
598
+ const fullDomain = domain + tld;
599
+ const domainResults = document.getElementById('domainResults');
600
+
601
+ // Simulate checking
602
+ domainResults.innerHTML = `
603
+ <div class="text-center py-4">
604
+ <i class="fas fa-spinner fa-spin text-blue-500 text-2xl mb-2"></i>
605
+ <p>Vérification de ${fullDomain} en cours...</p>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
606
  </div>
 
 
607
  `;
608
+ domainResults.classList.remove('hidden');
609
 
610
+ // Simulate results after delay
611
+ setTimeout(() => {
612
+ const isAvailable = Math.random() > 0.5; // 50% chance of being available
613
+
614
+ if (isAvailable) {
615
+ domainResults.innerHTML = `
616
+ <div class="bg-green-100 border-l-4 border-green-500 p-4 text-green-700">
617
+ <div class="flex items-center">
618
+ <i class="fas fa-check-circle text-green-500 text-2xl mr-3"></i>
619
+ <div>
620
+ <p class="font-bold">${fullDomain} est disponible !</p>
621
+ <p class="text-sm">Enregistrez ce domaine maintenant avec l'un de nos partenaires.</p>
622
+ </div>
623
+ </div>
624
+ <div class="mt-4 grid grid-cols-2 gap-2">
625
+ <button class="bg-blue-500 hover:bg-blue-600 text-white py-2 px-4 rounded text-sm">
626
+ <i class="fas fa-external-link-alt mr-1"></i> Enregistrer avec Freenom
627
+ </button>
628
+ <button class="bg-green-500 hover:bg-green-600 text-white py-2 px-4 rounded text-sm">
629
+ <i class="fas fa-shopping-cart mr-1"></i> Ajouter à la liste
630
+ </button>
631
+ </div>
632
+ </div>
633
+ `;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
634
  } else {
635
+ domainResults.innerHTML = `
636
+ <div class="bg-red-100 border-l-4 border-red-500 p-4 text-red-700">
637
+ <div class="flex items-center">
638
+ <i class="fas fa-times-circle text-red-500 text-2xl mr-3"></i>
639
+ <div>
640
+ <p class="font-bold">${fullDomain} n'est pas disponible</p>
641
+ <p class="text-sm">Ce domaine est déjà enregistré. Essayez une autre variation.</p>
642
+ </div>
643
+ </div>
644
+ <div class="mt-4">
645
+ <p class="text-sm mb-2">Suggestions alternatives :</p>
646
+ <ul class="space-y-1">
647
+ <li class="flex items-center">
648
+ <i class="fas fa-arrow-right text-gray-500 mr-2 text-xs"></i>
649
+ <span class="text-blue-500 hover:underline cursor-pointer">${domain}${tld === '.com' ? '.net' : '.com'}</span>
650
+ </li>
651
+ <li class="flex items-center">
652
+ <i class="fas fa-arrow-right text-gray-500 mr-2 text-xs"></i>
653
+ <span class="text-blue-500 hover:underline cursor-pointer">${domain}123${tld}</span>
654
+ </li>
655
+ <li class="flex items-center">
656
+ <i class="fas fa-arrow-right text-gray-500 mr-2 text-xs"></i>
657
+ <span class="text-blue-500 hover:underline cursor-pointer">mon${domain}${tld}</span>
658
+ </li>
659
+ </ul>
660
+ </div>
661
  </div>
 
 
 
662
  `;
 
663
  }
664
+ }, 1500);
 
 
665
  });
 
 
 
 
 
 
 
 
 
 
666
 
667
+ // SSL Checker
668
+ document.getElementById('checkSslBtn').addEventListener('click', function() {
669
+ const url = document.getElementById('sslInput').value.trim();
670
+
671
+ if (!url) {
672
+ alert('Veuillez entrer une URL');
673
+ return;
674
+ }
675
+
676
+ const sslResults = document.getElementById('sslResults');
677
+
678
+ // Simulate checking
679
+ sslResults.innerHTML = `
680
+ <div class="text-center py-4">
681
+ <i class="fas fa-spinner fa-spin text-blue-500 text-2xl mb-2"></i>
682
+ <p>Analyse du certificat SSL pour ${url} en cours...</p>
683
+ </div>
684
+ `;
685
+ sslResults.classList.remove('hidden');
686
+
687
+ // Simulate results after delay
688
+ setTimeout(() => {
689
+ const status = Math.random() > 0.3 ? 'valid' : (Math.random() > 0.5 ? 'expired' : 'warning');
690
+ const days = Math.floor(Math.random() * 365);
 
 
 
 
 
 
 
 
691
 
692
+ if (status === 'valid') {
693
+ sslResults.innerHTML = `
694
+ <div class="ssl-status-valid p-4 rounded-lg">
695
+ <div class="flex items-center mb-4">
696
+ <i class="fas fa-lock text-2xl mr-3"></i>
697
+ <div>
698
+ <p class="font-bold">Certificat SSL Valide</p>
699
+ <p class="text-sm">${url} utilise un certificat SSL valide et sécurisé.</p>
700
+ </div>
701
+ </div>
702
+ <div class="grid grid-cols-2 gap-4 text-sm">
703
+ <div>
704
+ <p class="font-medium">Émis par :</p>
705
+ <p>Let's Encrypt</p>
706
+ </div>
707
+ <div>
708
+ <p class="font-medium">Expire dans :</p>
709
+ <p>${days} jours</p>
710
+ </div>
711
+ <div>
712
+ <p class="font-medium">Protocole :</p>
713
+ <p>TLS 1.3</p>
714
+ </div>
715
+ <div>
716
+ <p class="font-medium">Chiffrement :</p>
717
+ <p>AES-256-GCM</p>
718
+ </div>
719
+ </div>
720
+ <div class="mt-4">
721
+ <a href="#" class="text-blue-500 hover:underline text-sm">
722
+ <i class="fas fa-external-link-alt mr-1"></i> Obtenir un certificat similaire
723
+ </a>
724
+ </div>
725
+ </div>
726
+ `;
727
+ } else if (status === 'expired') {
728
+ sslResults.innerHTML = `
729
+ <div class="ssl-status-expired p-4 rounded-lg">
730
+ <div class="flex items-center mb-4">
731
+ <i class="fas fa-exclamation-triangle text-2xl mr-3"></i>
732
+ <div>
733
+ <p class="font-bold">Certificat SSL Expiré</p>
734
+ <p class="text-sm">${url} a un certificat SSL qui a expiré il y a ${days} jours.</p>
735
+ </div>
736
+ </div>
737
+ <div class="grid grid-cols-2 gap-4 text-sm">
738
+ <div>
739
+ <p class="font-medium">Émis par :</p>
740
+ <p>Let's Encrypt</p>
741
+ </div>
742
+ <div>
743
+ <p class="font-medium">Expiré depuis :</p>
744
+ <p>${days} jours</p>
745
+ </div>
746
+ </div>
747
+ <div class="mt-4 grid grid-cols-2 gap-2">
748
+ <a href="#" class="bg-red-500 hover:bg-red-600 text-white py-2 px-4 rounded text-sm text-center">
749
+ <i class="fas fa-sync-alt mr-1"></i> Renouveler
750
+ </a>
751
+ <a href="#" class="bg-blue-500 hover:bg-blue-600 text-white py-2 px-4 rounded text-sm text-center">
752
+ <i class="fas fa-info-circle mr-1"></i> Plus d'infos
753
+ </a>
754
+ </div>
755
+ </div>
756
+ `;
757
+ } else {
758
+ sslResults.innerHTML = `
759
+ <div class="ssl-status-warning p-4 rounded-lg">
760
+ <div class="flex items-center mb-4">
761
+ <i class="fas fa-exclamation-circle text-2xl mr-3"></i>
762
+ <div>
763
+ <p class="font-bold">Problème de Configuration SSL</p>
764
+ <p class="text-sm">${url} a un certificat SSL mais avec des problèmes de configuration.</p>
765
+ </div>
766
+ </div>
767
+ <div class="text-sm space-y-2">
768
+ <p><i class="fas fa-check text-green-500 mr-2"></i> Certificat valide</p>
769
+ <p><i class="fas fa-times text-red-500 mr-2"></i> Mauvaise configuration de la chaîne</p>
770
+ <p><i class="fas fa-check text-green-500 mr-2"></i> Protocoles modernes supportés</p>
771
+ <p><i class="fas fa-times text-red-500 mr-2"></i> Redirection HTTP vers HTTPS manquante</p>
772
+ </div>
773
+ <div class="mt-4">
774
+ <a href="#" class="text-blue-500 hover:underline text-sm">
775
+ <i class="fas fa-external-link-alt mr-1"></i> Guide de configuration SSL
776
+ </a>
777
+ </div>
778
+ </div>
779
+ `;
780
+ }
781
+ }, 2000);
782
+ });
783
+
784
+ // DNS Test
785
+ document.getElementById('testDnsBtn').addEventListener('click', function() {
786
+ const domain = document.getElementById('dnsTestInput').value.trim();
787
+
788
+ if (!domain) {
789
+ alert('Veuillez entrer un domaine');
790
+ return;
791
+ }
792
+
793
+ const dnsTestResults = document.getElementById('dnsTestResults');
794
+
795
+ // Simulate checking
796
+ dnsTestResults.innerHTML = `
797
+ <div class="text-center py-4">
798
+ <i class="fas fa-spinner fa-spin text-blue-500 text-2xl mb-2"></i>
799
+ <p>Test des serveurs DNS pour ${domain} en cours...</p>
800
+ </div>
801
+ `;
802
+ dnsTestResults.classList.remove('hidden');
803
+
804
+ // Simulate results after delay
805
+ setTimeout(() => {
806
+ const servers = [
807
+ { name: 'Cloudflare (1.1.1.1)', ping: Math.floor(Math.random() * 50) + 5, status: 'excellent' },
808
+ { name: 'Google (8.8.8.8)', ping: Math.floor(Math.random() * 80) + 10, status: 'good' },
809
+ { name: 'OpenDNS (208.67.222.222)', ping: Math.floor(Math.random() * 120) + 20, status: 'average' },
810
+ { name: 'Quad9 (9.9.9.9)', ping: Math.floor(Math.random() * 100) + 15, status: 'good' },
811
+ { name: 'DNS local', ping: Math.floor(Math.random() * 200) + 50, status: 'poor' }
812
+ ];
813
 
814
+ let html = `
815
+ <div class="mb-4">
816
+ <h4 class="font-medium mb-2">Résultats DNS pour ${domain}</h4>
817
+ <div class="progress-bar">
818
+ <div class="progress-fill" style="width: 100%"></div>
819
+ </div>
820
+ </div>
821
+ <div class="space-y-3">
822
+ `;
823
 
824
+ servers.forEach(server => {
825
+ let statusClass = '';
826
+ let statusIcon = '';
827
+
828
+ if (server.status === 'excellent') {
829
+ statusClass = 'text-green-500';
830
+ statusIcon = 'fa-check-circle';
831
+ } else if (server.status === 'good') {
832
+ statusClass = 'text-blue-500';
833
+ statusIcon = 'fa-check-circle';
834
+ } else if (server.status === 'average') {
835
+ statusClass = 'text-yellow-500';
836
+ statusIcon = 'fa-exclamation-circle';
837
+ } else {
838
+ statusClass = 'text-red-500';
839
+ statusIcon = 'fa-times-circle';
840
+ }
841
+
842
+ html += `
843
+ <div class="flex justify-between items-center bg-gray-50 p-3 rounded">
844
+ <div class="flex items-center">
845
+ <i class="fas ${statusIcon} ${statusClass} mr-3"></i>
846
+ <span>${server.name}</span>
847
+ </div>
848
+ <span class="font-medium ${statusClass}">${server.ping} ms</span>
849
  </div>
 
 
 
850
  `;
851
+ });
 
 
 
852
 
853
+ html += `
854
+ </div>
855
+ <div class="mt-4 text-center">
856
+ <button class="bg-blue-500 hover:bg-blue-600 text-white px-6 py-2 rounded">
857
+ <i class="fas fa-exchange-alt mr-1"></i> Changer de serveur DNS
858
+ </button>
859
+ </div>
860
+ `;
 
861
 
862
+ dnsTestResults.innerHTML = html;
863
+ }, 2500);
864
+ });
865
+ });
 
 
 
 
 
 
866
  </script>
867
  <p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=docto41/deepsite-pro" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
868
  </html>
prompts.txt CHANGED
@@ -3,4 +3,14 @@ AFFICHER TOUTE +19,995 MORE TOOLS
3
  les boutons des tools ne sont pas cliquable et ne fonctionne pas
4
  ses bouton : Design 3,200 tools Development 4,500 tools SEO & Analytics 1,800 tools AI Core 2,500 tools Security 1,200 tools Marketing ne fonctionne pas
5
  quand on appui sur launch ouvrer dans une nouvel fenetre
6
- creer un plus puissant hacker de code telévision gratuite avoir acces gratuite a toute les chainnes en abonnement
 
 
 
 
 
 
 
 
 
 
 
3
  les boutons des tools ne sont pas cliquable et ne fonctionne pas
4
  ses bouton : Design 3,200 tools Development 4,500 tools SEO & Analytics 1,800 tools AI Core 2,500 tools Security 1,200 tools Marketing ne fonctionne pas
5
  quand on appui sur launch ouvrer dans une nouvel fenetre
6
+ creer un plus puissant hacker de code telévision gratuite avoir acces gratuite a toute les chainnes en abonnement
7
+ je veux activer reelement
8
+ je veux pas de simulation je veux sa marche reellement
9
+ je veux acceder gratuite a toutes ses chaine sans payer
10
+ je veux les code de connection de toutes les chainne payant
11
+ creer un acces gratuite a toutes les chaine payant gratuite
12
+ debloquer toutes les chaines payant donner acces gratuite au wifi Bbox-2E89A8E8
13
+ CREER UN DETECTEUR DES CODE D ABONNEMENT EN ACCES GRATUITE AUTOMATIQUE PAR WIFI
14
+ SERVEUR DNS
15
+ enregistrement domaine , ssl , serveur dns ,etc... toutes outils le toute gratuit
16
+ les bouton ne fonctionne pas