Spaces:
Running
# HTS Investigation Suite - Dockerfile Frontend React
Browse files# HIGH TECH SECURITY - Production Frontend Container
# Stage 1: Build React App
FROM node:18-alpine AS builder
# Métadonnées
LABEL maintainer="HIGH TECH SECURITY <contact@hts-investigation.com>"
LABEL version="2.1.0"
LABEL description="HTS Investigation Suite Frontend"
# Variables d'environnement de build
ENV NODE_ENV=production
ENV REACT_APP_API_URL=http://localhost:8000
ENV REACT_APP_COMPANY_NAME="HIGH TECH SECURITY"
ENV REACT_APP_COMPANY_ADDRESS="203-205 The Vale, London W3 7QS, United Kingdom"
ENV REACT_APP_COMPANY_NUMBER="7849187"
ENV REACT_APP_POLICY_NUMBER="550.232.804"
ENV REACT_APP_VERSION="2.1.0"
WORKDIR /app
# Installation dépendances
COPY package*.json ./
RUN npm ci --only=production
# Copie du code source
COPY . .
# Build optimisé pour production
RUN npm run build
# Stage 2: Production Nginx
FROM nginx:alpine
# Installation utilitaires
RUN apk add --no-cache curl
# Configuration Nginx optimisée
COPY nginx-frontend.conf /etc/nginx/conf.d/default.conf
# Copie des fichiers buildés
COPY --from=builder /app/build /usr/share/nginx/html
# Page d'information HTS
RUN echo '<!DOCTYPE html>
<html>
<head>
<title>HIGH TECH SECURITY - HTS Investigation Suite</title>
<meta charset="UTF-8">
<style>
body { font-family: Arial, sans-serif; margin: 40px; background: #f5f5f5; }
.container { max-width: 800px; margin: 0 auto; background: white; padding: 40px; border-radius: 10px; box-shadow: 0 0 20px rgba(0,0,0,0.1); }
.logo { text-align: center; margin-bottom: 30px; }
.logo h1 { color: #2563eb; margin: 0; font-size: 2.5em; }
.logo p { color: #666; margin: 5px 0; }
.info { background: #f8fafc; padding: 20px; border-radius: 8px; margin: 20px 0; }
.contact { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px; margin-top: 30px; }
.contact-item { background: #e5e7eb; padding: 15px; border-radius: 8px; }
.status { background: #dcfce7; border: 1px solid #bbf7d0; color: #166534; padding: 15px; border-radius: 8px; text-align: center; margin: 20px 0; }
</style>
</head>
<body>
<div class="container">
<div class="logo">
<h1>🛡️ HIGH TECH SECURITY</h1>
<p>HTS Investigation Suite v2.1.0</p>
<p>Solutions Anti-Fraude pour Administrations</p>
</div>
<div class="status">
<strong>✅ Système opérationnel</strong> - Tous les services sont en ligne
</div>
<div class="info">
<h3>À propos</h3>
<p>HTS Investigation Suite est une solution complète d\'investigation et de détection de fraudes développée par HIGH TECH SECURITY pour les administrations publiques.</p>
<p><strong>Fonctionnalités principales :</strong></p>
<ul>
<li>🧠 Analyse IA DarkBERT (BERT/ALBERT/RoBERTa)</li>
<li>🔍 Investigation modules spécialisés</li>
<li>🛡️ Sécurité maximale et chiffrement E2E</li>
<li>📊 Monitoring temps réel</li>
<li>⚖️ Conformité RGPD et ISO 27001</li>
</ul>
</div>
<div class="contact">
<div class="contact-item">
<h4>🏢 Siège Social</h4>
<p><strong>HIGH TECH SECURITY</strong><br>
203-205 The Vale<br>
London W3 7QS<br>
United Kingdom</p>
</div>
<div class="contact-item">
<h4>📞 Contacts</h4>
<p><strong>UK:</strong> +44 7591 665201<br>
<strong>Espagne:</strong> +34 673 075445<br>
<strong>USA:</strong> +1 302 579 0159<br>
<strong>Email:</strong> contact@hts-investigation.com</p>
</div>
<div class="contact-item">
<h4>📋 Informations Légales</h4>
<p><strong>Company Number:</strong> 7849187<br>
<strong>Policy Number:</strong> 550.232.804<br>
<strong>Certifications:</strong> ISO 27001<br>
<strong>Conformité:</strong> RGPD</p>
</div>
</div>
<div class="info" style="text-align: center; margin-top: 30px;">
<p><strong>Accès sécurisé réservé aux administrations autorisées</strong></p>
<p>Support technique 24/7 disponible</p>
</div>
</div>
</body>
</html>' > /usr/share/nginx/html/info.html
# Health check
HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
CMD curl -f http://localhost/ || exit 1
# Exposition du port
EXPOSE 80
# Démarrage Nginx
CMD ["nginx", "-g", "daemon off;"]
- darkbert.html +150 -0
- index.html +11 -11
- investigations.html +88 -0
|
@@ -0,0 +1,150 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<!DOCTYPE html>
|
| 2 |
+
<html lang="en">
|
| 3 |
+
<head>
|
| 4 |
+
<meta charset="UTF-8">
|
| 5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
| 6 |
+
<title>DarkBERT Analysis | HTS Investigation Suite</title>
|
| 7 |
+
<link rel="icon" type="image/x-icon" href="/static/favicon.ico">
|
| 8 |
+
<script src="https://cdn.tailwindcss.com"></script>
|
| 9 |
+
<script src="https://unpkg.com/feather-icons"></script>
|
| 10 |
+
<script src="https://cdn.jsdelivr.net/npm/vanta@latest/dist/vanta.globe.min.js"></script>
|
| 11 |
+
<style>
|
| 12 |
+
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;700&family=Rubik:wght@300;400;500;600;700&display=swap');
|
| 13 |
+
body {
|
| 14 |
+
font-family: 'Rubik', sans-serif;
|
| 15 |
+
}
|
| 16 |
+
.code-font {
|
| 17 |
+
font-family: 'JetBrains Mono', monospace;
|
| 18 |
+
}
|
| 19 |
+
.vanta-canvas {
|
| 20 |
+
position: absolute;
|
| 21 |
+
top: 0;
|
| 22 |
+
left: 0;
|
| 23 |
+
width: 100%;
|
| 24 |
+
height: 100%;
|
| 25 |
+
z-index: 0;
|
| 26 |
+
opacity: 0.15;
|
| 27 |
+
}
|
| 28 |
+
</style>
|
| 29 |
+
</head>
|
| 30 |
+
<body class="bg-gray-50">
|
| 31 |
+
<div id="vanta-bg" class="vanta-canvas"></div>
|
| 32 |
+
|
| 33 |
+
<!-- Header -->
|
| 34 |
+
<header class="relative z-10 bg-white shadow-lg border-b border-gray-200">
|
| 35 |
+
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-4">
|
| 36 |
+
<div class="flex items-center justify-between">
|
| 37 |
+
<div class="flex items-center space-x-4">
|
| 38 |
+
<div class="bg-blue-600 p-2 rounded-lg">
|
| 39 |
+
<i data-feather="shield" class="text-white w-6 h-6"></i>
|
| 40 |
+
</div>
|
| 41 |
+
<div>
|
| 42 |
+
<h1 class="text-2xl font-bold text-gray-900">HIGH TECH SECURITY</h1>
|
| 43 |
+
<p class="text-sm text-gray-600">HTS Investigation Suite v2.1</p>
|
| 44 |
+
</div>
|
| 45 |
+
</div>
|
| 46 |
+
|
| 47 |
+
<div class="hidden md:flex items-center space-x-6">
|
| 48 |
+
<div class="text-right">
|
| 49 |
+
<div class="text-gray-600">203-205 The Vale, London W3 7QS</div>
|
| 50 |
+
<div class="text-gray-600">UK: +44 7591 665201 | Company: 7849187</div>
|
| 51 |
+
</div>
|
| 52 |
+
<div class="flex items-center space-x-2">
|
| 53 |
+
<i data-feather="lock" class="w-5 h-5 text-green-500"></i>
|
| 54 |
+
<span class="text-sm text-green-600 font-medium">Sécurisé</span>
|
| 55 |
+
</div>
|
| 56 |
+
</div>
|
| 57 |
+
</div>
|
| 58 |
+
</div>
|
| 59 |
+
</header>
|
| 60 |
+
|
| 61 |
+
<!-- Navigation -->
|
| 62 |
+
<nav class="relative z-10 bg-gray-800 text-white">
|
| 63 |
+
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
| 64 |
+
<div class="flex space-x-1 overflow-x-auto py-2 hide-scrollbar">
|
| 65 |
+
<a href="/" class="flex items-center space-x-2 px-4 py-3 border-b-2 border-transparent hover:border-gray-600 transition-colors">
|
| 66 |
+
<i data-feather="trending-up" class="w-4 h-4"></i>
|
| 67 |
+
<span>Dashboard</span>
|
| 68 |
+
</a>
|
| 69 |
+
<a href="/darkbert" class="flex items-center space-x-2 px-4 py-3 border-b-2 border-blue-400 text-blue-400 transition-colors">
|
| 70 |
+
<i data-feather="brain" class="w-4 h-4"></i>
|
| 71 |
+
<span>DarkBERT Analysis</span>
|
| 72 |
+
</a>
|
| 73 |
+
<a href="/investigations" class="flex items-center space-x-2 px-4 py-3 border-b-2 border-transparent hover:border-gray-600 transition-colors">
|
| 74 |
+
<i data-feather="search" class="w-4 h-4"></i>
|
| 75 |
+
<span>Investigations</span>
|
| 76 |
+
</a>
|
| 77 |
+
<a href="/monitoring" class="flex items-center space-x-2 px-4 py-3 border-b-2 border-transparent hover:border-gray-600 transition-colors">
|
| 78 |
+
<i data-feather="eye" class="w-4 h-4"></i>
|
| 79 |
+
<span>Monitoring</span>
|
| 80 |
+
</a>
|
| 81 |
+
</div>
|
| 82 |
+
</div>
|
| 83 |
+
</nav>
|
| 84 |
+
|
| 85 |
+
<!-- Main Content -->
|
| 86 |
+
<main class="relative z-10 max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8">
|
| 87 |
+
<div class="bg-white rounded-xl shadow-lg p-6 mb-8">
|
| 88 |
+
<h2 class="text-2xl font-bold text-gray-900 mb-6">DarkBERT Secure Analysis</h2>
|
| 89 |
+
|
| 90 |
+
<div class="grid grid-cols-1 lg:grid-cols-2 gap-6">
|
| 91 |
+
<div class="space-y-4">
|
| 92 |
+
<div>
|
| 93 |
+
<label class="block text-sm font-medium text-gray-700 mb-2">Client Type</label>
|
| 94 |
+
<select class="w-full p-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500">
|
| 95 |
+
<option value="police">Police Forces</option>
|
| 96 |
+
<option value="fiscal">Tax Administration</option>
|
| 97 |
+
<option value="customs">Customs Services</option>
|
| 98 |
+
<option value="court">Courts</option>
|
| 99 |
+
</select>
|
| 100 |
+
</div>
|
| 101 |
+
|
| 102 |
+
<div>
|
| 103 |
+
<label class="block text-sm font-medium text-gray-700 mb-2">Investigation Title</label>
|
| 104 |
+
<input type="text" placeholder="Ex: Criminal Network Investigation 2025" class="w-full p-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500">
|
| 105 |
+
</div>
|
| 106 |
+
|
| 107 |
+
<div>
|
| 108 |
+
<label class="block text-sm font-medium text-gray-700 mb-2">AI Model</label>
|
| 109 |
+
<select class="w-full p-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500">
|
| 110 |
+
<option value="bert">BERT (Fast - 94.2%)</option>
|
| 111 |
+
<option value="albert">ALBERT (Very Fast - 91.8%)</option>
|
| 112 |
+
<option value="roberta">RoBERTa (Accurate - 96.1%)</option>
|
| 113 |
+
</select>
|
| 114 |
+
</div>
|
| 115 |
+
</div>
|
| 116 |
+
|
| 117 |
+
<div>
|
| 118 |
+
<label class="block text-sm font-medium text-gray-700 mb-2">Documents to Analyze (one per line)</label>
|
| 119 |
+
<textarea placeholder="Insert your documents here, one per line..." class="w-full h-40 p-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500 font-mono text-sm"></textarea>
|
| 120 |
+
<p class="text-xs text-gray-500 mt-1">0 documents | Minimum 3 documents required</p>
|
| 121 |
+
</div>
|
| 122 |
+
</div>
|
| 123 |
+
|
| 124 |
+
<div class="mt-6 flex gap-4">
|
| 125 |
+
<button class="flex-1 bg-blue-600 hover:bg-blue-700 text-white font-semibold py-3 px-6 rounded-lg transition-colors flex items-center justify-center gap-2">
|
| 126 |
+
<i data-feather="brain" class="w-5 h-5"></i>
|
| 127 |
+
Run DarkBERT Analysis
|
| 128 |
+
</button>
|
| 129 |
+
</div>
|
| 130 |
+
</div>
|
| 131 |
+
</main>
|
| 132 |
+
|
| 133 |
+
<script>
|
| 134 |
+
feather.replace();
|
| 135 |
+
VANTA.GLOBE({
|
| 136 |
+
el: "#vanta-bg",
|
| 137 |
+
mouseControls: true,
|
| 138 |
+
touchControls: true,
|
| 139 |
+
gyroControls: false,
|
| 140 |
+
minHeight: 200.00,
|
| 141 |
+
minWidth: 200.00,
|
| 142 |
+
scale: 1.00,
|
| 143 |
+
scaleMobile: 1.00,
|
| 144 |
+
color: 0x3b82f6,
|
| 145 |
+
backgroundColor: 0xf8fafc,
|
| 146 |
+
size: 0.8
|
| 147 |
+
});
|
| 148 |
+
</script>
|
| 149 |
+
</body>
|
| 150 |
+
</html>
|
|
@@ -84,19 +84,19 @@
|
|
| 84 |
<nav class="relative z-10 bg-gray-800 text-white">
|
| 85 |
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
| 86 |
<div class="flex space-x-1 overflow-x-auto py-2 hide-scrollbar">
|
| 87 |
-
<a href="
|
| 88 |
<i data-feather="trending-up" class="w-4 h-4"></i>
|
| 89 |
<span>Dashboard</span>
|
| 90 |
</a>
|
| 91 |
-
<a href="
|
| 92 |
<i data-feather="brain" class="w-4 h-4"></i>
|
| 93 |
<span>DarkBERT Analysis</span>
|
| 94 |
</a>
|
| 95 |
-
<a href="
|
| 96 |
<i data-feather="search" class="w-4 h-4"></i>
|
| 97 |
<span>Investigations</span>
|
| 98 |
</a>
|
| 99 |
-
<a href="
|
| 100 |
<i data-feather="eye" class="w-4 h-4"></i>
|
| 101 |
<span>Monitoring</span>
|
| 102 |
</a>
|
|
@@ -231,19 +231,19 @@
|
|
| 231 |
<div class="bg-white rounded-xl shadow-lg p-6 border border-gray-200">
|
| 232 |
<h3 class="text-lg font-semibold text-gray-900 mb-4">Start New Analysis</h3>
|
| 233 |
<p class="text-sm text-gray-600 mb-4">Initiate DarkBERT analysis with documents or text input</p>
|
| 234 |
-
<
|
| 235 |
<i data-feather="brain" class="w-4 h-4"></i>
|
| 236 |
<span>Launch DarkBERT Analysis</span>
|
| 237 |
-
</
|
| 238 |
</div>
|
| 239 |
|
| 240 |
<div class="bg-white rounded-xl shadow-lg p-6 border border-gray-200">
|
| 241 |
<h3 class="text-lg font-semibold text-gray-900 mb-4">Recent Investigations</h3>
|
| 242 |
<div class="space-y-2">
|
| 243 |
-
<a href="
|
| 244 |
-
<a href="
|
| 245 |
-
<a href="
|
| 246 |
-
|
| 247 |
</div>
|
| 248 |
|
| 249 |
<div class="bg-white rounded-xl shadow-lg p-6 border border-gray-200">
|
|
@@ -265,9 +265,9 @@
|
|
| 265 |
</div>
|
| 266 |
</div>
|
| 267 |
</main>
|
| 268 |
-
|
| 269 |
<script src="https://cdn.jsdelivr.net/npm/animejs@3.2.1/lib/anime.min.js"></script>
|
| 270 |
<script>
|
|
|
|
| 271 |
feather.replace();
|
| 272 |
VANTA.GLOBE({
|
| 273 |
el: "#vanta-bg",
|
|
|
|
| 84 |
<nav class="relative z-10 bg-gray-800 text-white">
|
| 85 |
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
| 86 |
<div class="flex space-x-1 overflow-x-auto py-2 hide-scrollbar">
|
| 87 |
+
<a href="/" class="flex items-center space-x-2 px-4 py-3 border-b-2 border-blue-400 text-blue-400 transition-colors">
|
| 88 |
<i data-feather="trending-up" class="w-4 h-4"></i>
|
| 89 |
<span>Dashboard</span>
|
| 90 |
</a>
|
| 91 |
+
<a href="/darkbert" class="flex items-center space-x-2 px-4 py-3 border-b-2 border-transparent hover:border-gray-600 transition-colors">
|
| 92 |
<i data-feather="brain" class="w-4 h-4"></i>
|
| 93 |
<span>DarkBERT Analysis</span>
|
| 94 |
</a>
|
| 95 |
+
<a href="/investigations" class="flex items-center space-x-2 px-4 py-3 border-b-2 border-transparent hover:border-gray-600 transition-colors">
|
| 96 |
<i data-feather="search" class="w-4 h-4"></i>
|
| 97 |
<span>Investigations</span>
|
| 98 |
</a>
|
| 99 |
+
<a href="/monitoring" class="flex items-center space-x-2 px-4 py-3 border-b-2 border-transparent hover:border-gray-600 transition-colors">
|
| 100 |
<i data-feather="eye" class="w-4 h-4"></i>
|
| 101 |
<span>Monitoring</span>
|
| 102 |
</a>
|
|
|
|
| 231 |
<div class="bg-white rounded-xl shadow-lg p-6 border border-gray-200">
|
| 232 |
<h3 class="text-lg font-semibold text-gray-900 mb-4">Start New Analysis</h3>
|
| 233 |
<p class="text-sm text-gray-600 mb-4">Initiate DarkBERT analysis with documents or text input</p>
|
| 234 |
+
<a href="/darkbert" class="w-full bg-blue-600 hover:bg-blue-700 text-white font-medium py-2 px-4 rounded-lg flex items-center justify-center space-x-2">
|
| 235 |
<i data-feather="brain" class="w-4 h-4"></i>
|
| 236 |
<span>Launch DarkBERT Analysis</span>
|
| 237 |
+
</a>
|
| 238 |
</div>
|
| 239 |
|
| 240 |
<div class="bg-white rounded-xl shadow-lg p-6 border border-gray-200">
|
| 241 |
<h3 class="text-lg font-semibold text-gray-900 mb-4">Recent Investigations</h3>
|
| 242 |
<div class="space-y-2">
|
| 243 |
+
<a href="/investigations/operation-midnight" class="block p-2 hover:bg-gray-50 rounded-lg text-sm">Operation Midnight</a>
|
| 244 |
+
<a href="/investigations/sigma-protocol" class="block p-2 hover:bg-gray-50 rounded-lg text-sm">Sigma Protocol</a>
|
| 245 |
+
<a href="/investigations/phoenix-network" class="block p-2 hover:bg-gray-50 rounded-lg text-sm">Phoenix Network</a>
|
| 246 |
+
</div>
|
| 247 |
</div>
|
| 248 |
|
| 249 |
<div class="bg-white rounded-xl shadow-lg p-6 border border-gray-200">
|
|
|
|
| 265 |
</div>
|
| 266 |
</div>
|
| 267 |
</main>
|
|
|
|
| 268 |
<script src="https://cdn.jsdelivr.net/npm/animejs@3.2.1/lib/anime.min.js"></script>
|
| 269 |
<script>
|
| 270 |
+
// Initialize Vanta.js globe effect
|
| 271 |
feather.replace();
|
| 272 |
VANTA.GLOBE({
|
| 273 |
el: "#vanta-bg",
|
|
@@ -0,0 +1,88 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
```html
|
| 2 |
+
<!DOCTYPE html>
|
| 3 |
+
<html lang="en">
|
| 4 |
+
<head>
|
| 5 |
+
<meta charset="UTF-8">
|
| 6 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
| 7 |
+
<title>Investigations | HTS Investigation Suite</title>
|
| 8 |
+
<link rel="icon" type="image/x-icon" href="/static/favicon.ico">
|
| 9 |
+
<script src="https://cdn.tailwindcss.com"></script>
|
| 10 |
+
<script src="https://unpkg.com/feather-icons"></script>
|
| 11 |
+
<script src="https://cdn.jsdelivr.net/npm/vanta@latest/dist/vanta.globe.min.js"></script>
|
| 12 |
+
<style>
|
| 13 |
+
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;700&family=Rubik:wght@300;400;500;600;700&display=swap');
|
| 14 |
+
body {
|
| 15 |
+
font-family: 'Rubik', sans-serif;
|
| 16 |
+
}
|
| 17 |
+
.vanta-canvas {
|
| 18 |
+
position: absolute;
|
| 19 |
+
top: 0;
|
| 20 |
+
left: 0;
|
| 21 |
+
width: 100%;
|
| 22 |
+
height: 100%;
|
| 23 |
+
z-index: 0;
|
| 24 |
+
opacity: 0.15;
|
| 25 |
+
}
|
| 26 |
+
</style>
|
| 27 |
+
</head>
|
| 28 |
+
<body class="bg-gray-50">
|
| 29 |
+
<div id="vanta-bg" class="vanta-canvas"></div>
|
| 30 |
+
|
| 31 |
+
<!-- Header -->
|
| 32 |
+
<header class="relative z-10 bg-white shadow-lg border-b border-gray-200">
|
| 33 |
+
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-4">
|
| 34 |
+
<div class="flex items-center justify-between">
|
| 35 |
+
<div class="flex items-center space-x-4">
|
| 36 |
+
<div class="bg-blue-600 p-2 rounded-lg">
|
| 37 |
+
<i data-feather="shield" class="text-white w-6 h-6"></i>
|
| 38 |
+
</div>
|
| 39 |
+
<div>
|
| 40 |
+
<h1 class="text-2xl font-bold text-gray-900">HIGH TECH SECURITY</h1>
|
| 41 |
+
<p class="text-sm text-gray-600">HTS Investigation Suite v2.1</p>
|
| 42 |
+
</div>
|
| 43 |
+
</div>
|
| 44 |
+
|
| 45 |
+
<div class="hidden md:flex items-center space-x-6">
|
| 46 |
+
<div class="text-right">
|
| 47 |
+
<div class="text-gray-600">203-205 The Vale, London W3 7QS</div>
|
| 48 |
+
<div class="text-gray-600">UK: +44 7591 665201 | Company: 7849187</div>
|
| 49 |
+
</div>
|
| 50 |
+
<div class="flex items-center space-x-2">
|
| 51 |
+
<i data-feather="lock" class="w-5 h-5 text-green-500"></i>
|
| 52 |
+
<span class="text-sm text-green-600 font-medium">Sécurisé</span>
|
| 53 |
+
</div>
|
| 54 |
+
</div>
|
| 55 |
+
</div>
|
| 56 |
+
</div>
|
| 57 |
+
</header>
|
| 58 |
+
|
| 59 |
+
<!-- Navigation -->
|
| 60 |
+
<nav class="relative z-10 bg-gray-800 text-white">
|
| 61 |
+
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
| 62 |
+
<div class="flex space-x-1 overflow-x-auto py-2 hide-scrollbar">
|
| 63 |
+
<a href="/" class="flex items-center space-x-2 px-4 py-3 border-b-2 border-transparent hover:border-gray-600 transition-colors">
|
| 64 |
+
<i data-feather="trending-up" class="w-4 h-4"></i>
|
| 65 |
+
<span>Dashboard</span>
|
| 66 |
+
</a>
|
| 67 |
+
<a href="/darkbert" class="flex items-center space-x-2 px-4 py-3 border-b-2 border-transparent hover:border-gray-600 transition-colors">
|
| 68 |
+
<i data-feather="brain" class="w-4 h-4"></i>
|
| 69 |
+
<span>DarkBERT Analysis</span>
|
| 70 |
+
</a>
|
| 71 |
+
<a href="/investigations" class="flex items-center space-x-2 px-4 py-3 border-b-2 border-blue-400 text-blue-400 transition-colors">
|
| 72 |
+
<i data-feather="search" class="w-4 h-4"></i>
|
| 73 |
+
<span>Investigations</span>
|
| 74 |
+
</a>
|
| 75 |
+
<a href="/monitoring" class="flex items-center space-x-2 px-4 py-3 border-b-2 border-transparent hover:border-gray-600 transition-colors">
|
| 76 |
+
<i data-feather="eye" class="w-4 h-4"></i>
|
| 77 |
+
<span>Monitoring</span>
|
| 78 |
+
</a>
|
| 79 |
+
</div>
|
| 80 |
+
</div>
|
| 81 |
+
</nav>
|
| 82 |
+
|
| 83 |
+
<!-- Main Content -->
|
| 84 |
+
<main class="relative z-10 max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8">
|
| 85 |
+
<div class="bg-white rounded-xl shadow-lg p-6 mb-8">
|
| 86 |
+
<div class="flex items-center justify-between mb-6">
|
| 87 |
+
<h2 class="text-2xl font-bold text-gray-900">Active Investigations</h2>
|
| 88 |
+
<button class="bg-blue-600 hover:bg-blue-700
|