Spaces:
Sleeping
Sleeping
Upload base.html
Browse files- templates/base.html +54 -0
templates/base.html
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 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" />
|
| 6 |
+
<title>GymVision - Exercise Detection</title>
|
| 7 |
+
|
| 8 |
+
<!-- Tailwind (fine for demos; for prod, compile locally) -->
|
| 9 |
+
<script src="https://cdn.tailwindcss.com"></script>
|
| 10 |
+
|
| 11 |
+
<!-- Fonts (sleek, candy vibe) -->
|
| 12 |
+
<link rel="preconnect" href="https://fonts.googleapis.com">
|
| 13 |
+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
| 14 |
+
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;800&display=swap" rel="stylesheet">
|
| 15 |
+
|
| 16 |
+
<link rel="stylesheet" href="{{ url_for('static', filename='css/styles.css') }}" />
|
| 17 |
+
</head>
|
| 18 |
+
<body class="bg-zinc-950 text-zinc-100 antialiased">
|
| 19 |
+
<!-- Custom cursor -->
|
| 20 |
+
<div id="cursor-dot"></div>
|
| 21 |
+
<div id="cursor-ring"></div>
|
| 22 |
+
|
| 23 |
+
<!-- Animated dumbbell background -->
|
| 24 |
+
<canvas id="bg-canvas" class="fixed inset-0 -z-10"></canvas>
|
| 25 |
+
<div class="fixed inset-0 -z-10 bg-gradient-to-b from-zinc-900/40 via-zinc-950 to-black"></div>
|
| 26 |
+
|
| 27 |
+
<!-- Nav -->
|
| 28 |
+
<header class="w-full sticky top-0 z-20 backdrop-blur-md bg-zinc-950/40 border-b border-white/5">
|
| 29 |
+
<div class="max-w-7xl mx-auto px-6 py-4 flex items-center justify-between">
|
| 30 |
+
<a href="/" class="group select-none">
|
| 31 |
+
<span class="flex items-center gap-2">
|
| 32 |
+
<img src="{{ url_for('static', filename='img/weightlift.png') }}"
|
| 33 |
+
alt="GymVision logo"
|
| 34 |
+
class="h-7 w-7 object-contain transition-transform duration-200 ease-out group-hover:scale-105"
|
| 35 |
+
loading="lazy">
|
| 36 |
+
<span class="text-2xl font-extrabold tracking-tight transition-transform duration-200 ease-out group-hover:scale-105">
|
| 37 |
+
GymVision
|
| 38 |
+
</span>
|
| 39 |
+
</span>
|
| 40 |
+
</a>
|
| 41 |
+
</div>
|
| 42 |
+
</header>
|
| 43 |
+
|
| 44 |
+
<!-- Page content -->
|
| 45 |
+
{% block content %}{% endblock %}
|
| 46 |
+
|
| 47 |
+
<!-- Scripts -->
|
| 48 |
+
<script src="{{ url_for('static', filename='js/cursor.js') }}"></script>
|
| 49 |
+
<script src="{{ url_for('static', filename='js/particles.js') }}"></script>
|
| 50 |
+
<script src="{{ url_for('static', filename='js/scroll-reveal.js') }}"></script>
|
| 51 |
+
<!-- REPLACED: predict.js and upload.js with detection.js -->
|
| 52 |
+
<script src="{{ url_for('static', filename='js/detection.js') }}"></script>
|
| 53 |
+
</body>
|
| 54 |
+
</html>
|