repo: remove confirmed cross-project DockDeck Stitch scratch
GeoIntel release gates / Compile, test, contracts and builds (push) Canceled after 0s
GeoIntel release gates / Python and npm vulnerability policy (push) Canceled after 0s
GeoIntel release gates / GIS image, SBOM and container scan (push) Canceled after 0s
GeoIntel release gates / AI image, SBOM and container scan (push) Canceled after 0s
GeoIntel release gates / Compile, test, contracts and builds (push) Canceled after 0s
GeoIntel release gates / Python and npm vulnerability policy (push) Canceled after 0s
GeoIntel release gates / GIS image, SBOM and container scan (push) Canceled after 0s
GeoIntel release gates / AI image, SBOM and container scan (push) Canceled after 0s
This commit is contained in:
-269
@@ -1,269 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html class="dark" lang="nl"><head>
|
||||
<meta charset="utf-8"/>
|
||||
<meta content="width=device-width, initial-scale=1.0" name="viewport"/>
|
||||
<script src="https://cdn.tailwindcss.com?plugins=forms,container-queries"></script>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&display=swap" rel="stylesheet"/>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Geist:wght@400;500;600;700&display=swap" rel="stylesheet"/>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&display=swap" rel="stylesheet"/>
|
||||
<style>
|
||||
.material-symbols-outlined {
|
||||
font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
|
||||
}
|
||||
.glass-panel {
|
||||
background: rgba(15, 23, 42, 0.8);
|
||||
backdrop-filter: blur(12px);
|
||||
-webkit-backdrop-filter: blur(12px);
|
||||
}
|
||||
.search-glow {
|
||||
box-shadow: 0 0 40px 5px rgba(192, 193, 255, 0.1);
|
||||
}
|
||||
.selected-item {
|
||||
background: rgba(192, 193, 255, 0.1);
|
||||
border-left: 3px solid #c0c1ff;
|
||||
}
|
||||
@keyframes pulse-emerald {
|
||||
0%, 100% { opacity: 1; transform: scale(1); }
|
||||
50% { opacity: 0.5; transform: scale(1.2); }
|
||||
}
|
||||
.status-pulse {
|
||||
animation: pulse-emerald 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
|
||||
}
|
||||
</style>
|
||||
<script id="tailwind-config">
|
||||
tailwind.config = {
|
||||
darkMode: "class",
|
||||
theme: {
|
||||
extend: {
|
||||
"colors": {
|
||||
"on-error-container": "#ffdad6",
|
||||
"surface-container-high": "#222a3d",
|
||||
"error-container": "#93000a",
|
||||
"surface-variant": "#2d3449",
|
||||
"secondary": "#4edea3",
|
||||
"tertiary": "#ffb783",
|
||||
"surface-container-lowest": "#060e20",
|
||||
"on-secondary-fixed": "#002113",
|
||||
"on-secondary-fixed-variant": "#005236",
|
||||
"secondary-container": "#00a572",
|
||||
"outline": "#908fa0",
|
||||
"outline-variant": "#464554",
|
||||
"on-primary": "#1000a9",
|
||||
"on-tertiary-fixed-variant": "#703700",
|
||||
"on-tertiary-fixed": "#301400",
|
||||
"on-error": "#690005",
|
||||
"surface-container-highest": "#2d3449",
|
||||
"secondary-fixed": "#6ffbbe",
|
||||
"error": "#ffb4ab",
|
||||
"tertiary-fixed": "#ffdcc5",
|
||||
"secondary-fixed-dim": "#4edea3",
|
||||
"primary-container": "#8083ff",
|
||||
"tertiary-container": "#d97721",
|
||||
"surface-bright": "#31394d",
|
||||
"background": "#0b1326",
|
||||
"primary-fixed-dim": "#c0c1ff",
|
||||
"on-surface-variant": "#c7c4d7",
|
||||
"inverse-surface": "#dae2fd",
|
||||
"on-primary-container": "#0d0096",
|
||||
"on-primary-fixed-variant": "#2f2ebe",
|
||||
"tertiary-fixed-dim": "#ffb783",
|
||||
"surface-container-low": "#131b2e",
|
||||
"inverse-on-surface": "#283044",
|
||||
"on-tertiary-container": "#452000",
|
||||
"on-primary-fixed": "#07006c",
|
||||
"surface": "#0b1326",
|
||||
"inverse-primary": "#494bd6",
|
||||
"on-secondary": "#003824",
|
||||
"surface-container": "#171f33",
|
||||
"on-surface": "#dae2fd",
|
||||
"on-background": "#dae2fd",
|
||||
"surface-tint": "#c0c1ff",
|
||||
"surface-dim": "#0b1326",
|
||||
"primary": "#c0c1ff",
|
||||
"on-secondary-container": "#00311f",
|
||||
"on-tertiary": "#4f2500",
|
||||
"primary-fixed": "#e1e0ff"
|
||||
},
|
||||
"borderRadius": {
|
||||
"DEFAULT": "0.25rem",
|
||||
"lg": "0.5rem",
|
||||
"xl": "0.75rem",
|
||||
"full": "9999px"
|
||||
},
|
||||
"spacing": {
|
||||
"margin-mobile": "16px",
|
||||
"stack-md": "24px",
|
||||
"gutter": "24px",
|
||||
"margin-desktop": "40px",
|
||||
"container-max": "1440px",
|
||||
"base": "8px",
|
||||
"stack-lg": "48px",
|
||||
"stack-sm": "12px"
|
||||
},
|
||||
"fontFamily": {
|
||||
"body-lg": ["Inter"],
|
||||
"code-sm": ["Geist"],
|
||||
"label-md": ["Geist"],
|
||||
"headline-md": ["Geist"],
|
||||
"headline-lg-mobile": ["Geist"],
|
||||
"body-md": ["Inter"],
|
||||
"display-lg": ["Geist"],
|
||||
"headline-lg": ["Geist"]
|
||||
},
|
||||
"fontSize": {
|
||||
"body-lg": ["18px", {"lineHeight": "28px", "fontWeight": "400"}],
|
||||
"code-sm": ["13px", {"lineHeight": "18px", "fontWeight": "400"}],
|
||||
"label-md": ["14px", {"lineHeight": "20px", "letterSpacing": "0.02em", "fontWeight": "500"}],
|
||||
"headline-md": ["24px", {"lineHeight": "32px", "fontWeight": "500"}],
|
||||
"headline-lg-mobile": ["24px", {"lineHeight": "32px", "fontWeight": "600"}],
|
||||
"body-md": ["16px", {"lineHeight": "24px", "fontWeight": "400"}],
|
||||
"display-lg": ["48px", {"lineHeight": "56px", "letterSpacing": "-0.02em", "fontWeight": "600"}],
|
||||
"headline-lg": ["32px", {"lineHeight": "40px", "letterSpacing": "-0.01em", "fontWeight": "600"}]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body class="bg-background text-on-background font-body-md min-h-screen overflow-hidden selection:bg-primary/30">
|
||||
<!-- Background Content Layer (Blurred/Dimmed) -->
|
||||
<div class="fixed inset-0 z-0 filter blur-sm brightness-50 opacity-60">
|
||||
<!-- TopNavBar Mockup -->
|
||||
<header class="bg-background/80 backdrop-blur-md border-b border-outline-variant/30 flex justify-between items-center h-16 px-gutter w-full sticky top-0 z-50">
|
||||
<div class="font-headline-md text-headline-md font-semibold text-primary">DockDeck</div>
|
||||
<div class="flex items-center gap-4">
|
||||
<span class="material-symbols-outlined text-on-surface-variant">settings</span>
|
||||
<span class="material-symbols-outlined text-on-surface-variant">notifications</span>
|
||||
<div class="w-8 h-8 rounded-full bg-surface-container-high border border-outline-variant/50"></div>
|
||||
</div>
|
||||
</header>
|
||||
<!-- Main Content Mockup -->
|
||||
<main class="max-w-container-max mx-auto p-gutter pt-stack-md">
|
||||
<div class="grid grid-cols-1 md:grid-cols-3 gap-gutter">
|
||||
<div class="col-span-2 space-y-stack-md">
|
||||
<div class="h-64 rounded-xl bg-surface-container border border-outline-variant/20 p-6">
|
||||
<div class="h-4 w-32 bg-surface-variant/40 rounded-full mb-4"></div>
|
||||
<div class="h-40 w-full bg-surface-variant/20 rounded-lg"></div>
|
||||
</div>
|
||||
<div class="grid grid-cols-2 gap-4">
|
||||
<div class="h-32 rounded-xl bg-surface-container border border-outline-variant/20"></div>
|
||||
<div class="h-32 rounded-xl bg-surface-container border border-outline-variant/20"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="h-[500px] rounded-xl bg-surface-container border border-outline-variant/20"></div>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
<!-- Overlay / Command Palette -->
|
||||
<div class="fixed inset-0 z-[100] flex items-start justify-center pt-[102px] px-4 sm:px-6">
|
||||
<!-- Backdrop Backdrop -->
|
||||
<div class="absolute inset-0 bg-background/60 backdrop-blur-sm"></div>
|
||||
<!-- Command Palette Container -->
|
||||
<div class="relative w-full max-w-2xl glass-panel rounded-2xl border border-outline-variant/30 shadow-2xl overflow-hidden search-glow animate-in fade-in zoom-in duration-300">
|
||||
<!-- Search Input Area -->
|
||||
<div class="flex items-center px-5 py-4 border-b border-outline-variant/20">
|
||||
<span class="material-symbols-outlined text-primary mr-4" style="font-size: 28px;">search</span>
|
||||
<input autofocus="" class="w-full bg-transparent border-none focus:ring-0 text-headline-md font-headline-md text-on-surface placeholder:text-on-surface-variant/40 outline-none" placeholder="Zoek containers, instellingen of apps..." type="text" value="Pl"/>
|
||||
<div class="flex items-center gap-2">
|
||||
<kbd class="hidden sm:flex items-center justify-center h-6 w-12 rounded border border-outline-variant/40 bg-surface-container-high text-on-surface-variant font-code-sm text-code-sm">ESC</kbd>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Results List -->
|
||||
<div class="max-h-[614px] overflow-y-auto py-2 custom-scrollbar">
|
||||
<!-- Section: Apps -->
|
||||
<div class="px-3 mb-2">
|
||||
<div class="px-3 py-2 text-label-md font-label-md text-primary uppercase tracking-wider">Apps</div>
|
||||
<!-- Plex (Selected) -->
|
||||
<div class="group flex items-center px-3 py-3 rounded-xl selected-item transition-all duration-200 cursor-pointer">
|
||||
<div class="w-10 h-10 rounded-lg bg-surface-container-highest flex items-center justify-center mr-4 border border-outline-variant/30 overflow-hidden">
|
||||
<div class="w-full h-full" data-alt="A minimalist tech logo for a media streaming application featuring a stylized chevron or 'P' shape in a bright electric indigo color against a dark navy slate background. Professional, high-end software aesthetic with clean lines and premium lighting." style="background-image: url('https://lh3.googleusercontent.com/aida-public/AB6AXuAcRUcFYPWPig6MaD2rJ1GsBpI31Vy2gaztYMPCWaPfKqdVoiyKOU0F9xUgANvDke4WA7CJkJ5bCSpEV9-2GEV0EAhDX3nseGcLMpTzZin172FTsvpzoJGi9jUmmxGOyQX-6j5ReNvKlManLLDX1YGcIeqFjtJhq2Pza-L96rlzrAsNyLEZGZI937rcB_NKa0qn6LIaf9oOqOoYYkBR2yDYgpAI8rfDcGmtgPBtP-XxL2-hkOXfWLhGM3rjsVYZMP--3pbXGdlUb31f')"></div>
|
||||
</div>
|
||||
<div class="flex-grow">
|
||||
<div class="flex items-center gap-2">
|
||||
<span class="font-headline-md text-body-lg text-on-surface font-semibold">Plex</span>
|
||||
<span class="flex h-2 w-2 rounded-full bg-secondary status-pulse"></span>
|
||||
<span class="text-label-md font-label-md text-secondary">Actief</span>
|
||||
</div>
|
||||
<div class="text-label-md font-label-md text-on-surface-variant">Media Server • Port 32400</div>
|
||||
</div>
|
||||
<div class="text-on-surface-variant font-code-sm text-code-sm opacity-60">Container</div>
|
||||
</div>
|
||||
<!-- Paperless -->
|
||||
<div class="group flex items-center px-3 py-3 rounded-xl hover:bg-surface-variant/40 transition-all duration-200 cursor-pointer">
|
||||
<div class="w-10 h-10 rounded-lg bg-surface-container-highest flex items-center justify-center mr-4 border border-outline-variant/30 overflow-hidden">
|
||||
<div class="w-full h-full" data-alt="A clean, minimalist logo for a document management service showing a stylized folded paper or stack icon in vibrant teal. Dark mode compatible design with deep slate backgrounds and high-contrast accents." style="background-image: url('https://lh3.googleusercontent.com/aida-public/AB6AXuA3D9AXqBxbp_Ph0kQ8P6ogw5Wcz4NSlwdCLyXJQqrNTl60K2d4nfK99ZejAXWMvlVxuSg3iqyDaesmNmwZiPgkym5Gxv5GyqfHhlBTCs2ogRXLAExBeYMAnyPj49OAHpwyzymYHFRaEF5OaMA_UwMa-2MgkHWZMu1xdn0BZbiAKXiExyxNCpPrn2XVj5A9AjajvTmdVlmBif4U_6UAEgYqsAcxozTIX7LxOKvoH2ektyxB63VnuesWkb6kupzOiQscX1xuBpl0VUkB')"></div>
|
||||
</div>
|
||||
<div class="flex-grow">
|
||||
<div class="flex items-center gap-2">
|
||||
<span class="font-headline-md text-body-lg text-on-surface font-semibold">Paperless-ngx</span>
|
||||
</div>
|
||||
<div class="text-label-md font-label-md text-on-surface-variant">Document Management • Port 8000</div>
|
||||
</div>
|
||||
<div class="text-on-surface-variant font-code-sm text-code-sm opacity-0 group-hover:opacity-60">Enter</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Section: Favorieten -->
|
||||
<div class="px-3 mb-2">
|
||||
<div class="px-3 py-2 text-label-md font-label-md text-primary uppercase tracking-wider">Favorieten</div>
|
||||
<div class="group flex items-center px-3 py-3 rounded-xl hover:bg-surface-variant/40 transition-all duration-200 cursor-pointer">
|
||||
<div class="w-10 h-10 rounded-lg bg-surface-container-highest flex items-center justify-center mr-4 border border-outline-variant/30 overflow-hidden">
|
||||
<div class="w-full h-full" data-alt="The GitHub octocat logo rendered in a sleek, modernist 3D style with subtle metallic textures and soft ambient lighting. The background is a sophisticated deep indigo and slate blend, emphasizing technical authority and developer-centric aesthetics." style="background-image: url('https://lh3.googleusercontent.com/aida-public/AB6AXuCcpgY_n9Ihv_W9bICccMpA-610_DhAaJBpqw7lr91uwS_btI9CpeFtuYEEFDs_yR2Xs2TH7EBDui75irP7h2GckXHpzKJxI4-cNIb9sLZEVTaVyQQ4I0VZ_LkLtgoTMqnYQDxG3KaOk0w0eBBTUY8aifo0pS6e4ZPH8gSYJ_NKALOlFxeav8_Avn-QuNC7F2v_d5U_tDiGOjFSGTw1CAvTGfXqWiBsPXgJb5Nm_JQTbeeRcYhTTmdmZLGs6nM_XiJBgudVI4Ls5B3k')"></div>
|
||||
</div>
|
||||
<div class="flex-grow">
|
||||
<span class="font-headline-md text-body-lg text-on-surface font-semibold">GitHub</span>
|
||||
<div class="text-label-md font-label-md text-on-surface-variant">github.com/repository</div>
|
||||
</div>
|
||||
<span class="material-symbols-outlined text-on-surface-variant/40 group-hover:text-primary transition-colors">star</span>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Section: Google Search -->
|
||||
<div class="px-3 mb-2 border-t border-outline-variant/10 mt-2 pt-2">
|
||||
<div class="group flex items-center px-3 py-3 rounded-xl hover:bg-surface-variant/40 transition-all duration-200 cursor-pointer">
|
||||
<div class="w-10 h-10 rounded-lg bg-surface-container-highest flex items-center justify-center mr-4 border border-outline-variant/30">
|
||||
<span class="material-symbols-outlined text-on-surface-variant">travel_explore</span>
|
||||
</div>
|
||||
<div class="flex-grow">
|
||||
<span class="font-headline-md text-body-lg text-on-surface">Zoek op Google naar <span class="text-primary font-bold">"Pl..."</span></span>
|
||||
</div>
|
||||
<span class="material-symbols-outlined text-on-surface-variant/40">north_east</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Footer Hints -->
|
||||
<div class="px-5 py-3 border-t border-outline-variant/20 bg-surface-container-lowest/50 flex items-center justify-between">
|
||||
<div class="flex items-center gap-4 text-label-md font-label-md text-on-surface-variant/80">
|
||||
<span class="flex items-center gap-1.5"><kbd class="px-1.5 py-0.5 rounded border border-outline-variant/40 bg-surface-container-high font-code-sm text-[11px]">ENTER</kbd> om te openen</span>
|
||||
<span class="w-1 h-1 rounded-full bg-outline-variant/40"></span>
|
||||
<span class="flex items-center gap-1.5"><kbd class="px-1.5 py-0.5 rounded border border-outline-variant/40 bg-surface-container-high font-code-sm text-[11px]">ESC</kbd> om te sluiten</span>
|
||||
</div>
|
||||
<div class="flex items-center gap-2 text-label-md font-label-md text-primary/60">
|
||||
<span class="material-symbols-outlined text-[18px]">keyboard_command_key</span>
|
||||
<span>DockDeck QuickSearch</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Micro-interaction Script -->
|
||||
<script>
|
||||
document.addEventListener('keydown', (e) => {
|
||||
if (e.key === 'Escape') {
|
||||
// In a real app, this would close the palette
|
||||
console.log('Sluiten...');
|
||||
}
|
||||
if (e.key === 'ArrowDown') {
|
||||
e.preventDefault();
|
||||
// Simple navigation logic placeholder
|
||||
}
|
||||
});
|
||||
|
||||
// Atmosphere Effect
|
||||
const palette = document.querySelector('.glass-panel');
|
||||
document.addEventListener('mousemove', (e) => {
|
||||
const { clientX, clientY } = e;
|
||||
const x = (clientX / window.innerWidth - 0.5) * 10;
|
||||
const y = (clientY / window.innerHeight - 0.5) * 10;
|
||||
palette.style.transform = `perspective(1000px) rotateY(${x}deg) rotateX(${-y}deg)`;
|
||||
});
|
||||
</script>
|
||||
</body></html>
|
||||
Reference in New Issue
Block a user