Skip to content

Commit 143b253

Browse files
authored
Add initial HTML structure for GlassDeck viewer
1 parent 2743390 commit 143b253

File tree

1 file changed

+124
-0
lines changed

1 file changed

+124
-0
lines changed

GlassDeck/index.html

Lines changed: 124 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,124 @@
1+
<!DOCTYPE html>
2+
<html lang="he">
3+
<head>
4+
<meta charset="UTF-8">
5+
<title>GlassDeck – Presentation Viewer</title>
6+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
7+
8+
<style>
9+
:root {
10+
--glass-bg: rgba(255,255,255,0.15);
11+
--glass-border: rgba(255,255,255,0.35);
12+
--glass-blur: blur(14px);
13+
--accent: #7df9ff;
14+
}
15+
16+
body {
17+
margin: 0;
18+
background: radial-gradient(circle at top, #0a0f1f, #000);
19+
font-family: system-ui, sans-serif;
20+
overflow: hidden;
21+
color: white;
22+
}
23+
24+
#viewer {
25+
position: absolute;
26+
inset: 0;
27+
display: flex;
28+
align-items: center;
29+
justify-content: center;
30+
}
31+
32+
iframe, img {
33+
width: 90%;
34+
height: 90%;
35+
border-radius: 16px;
36+
box-shadow: 0 0 60px rgba(0,255,255,0.15);
37+
transition: transform .3s ease;
38+
}
39+
40+
/* 🧊 Glass Control Panel */
41+
#controls {
42+
position: fixed;
43+
bottom: 24px;
44+
left: 50%;
45+
transform: translateX(-50%);
46+
display: flex;
47+
gap: 12px;
48+
padding: 12px 16px;
49+
background: var(--glass-bg);
50+
backdrop-filter: var(--glass-blur);
51+
border: 1px solid var(--glass-border);
52+
border-radius: 999px;
53+
}
54+
55+
button {
56+
background: transparent;
57+
border: none;
58+
color: white;
59+
font-size: 20px;
60+
padding: 10px 14px;
61+
cursor: pointer;
62+
border-radius: 50%;
63+
transition: background .2s, transform .2s;
64+
}
65+
66+
button:hover {
67+
background: rgba(255,255,255,0.25);
68+
transform: scale(1.1);
69+
}
70+
71+
</style>
72+
</head>
73+
74+
<body>
75+
76+
<div id="viewer">
77+
<!-- PDF -->
78+
<iframe id="slide" src="presentation.pdf"></iframe>
79+
</div>
80+
81+
<div id="controls">
82+
<button onclick="prev()">⏮️</button>
83+
<button onclick="next()">⏭️</button>
84+
<button onclick="zoomIn()"></button>
85+
<button onclick="zoomOut()"></button>
86+
<button onclick="toggleFullscreen()"></button>
87+
</div>
88+
89+
<script>
90+
let zoom = 1;
91+
const slide = document.getElementById("slide");
92+
93+
function zoomIn() {
94+
zoom += 0.1;
95+
slide.style.transform = `scale(${zoom})`;
96+
}
97+
98+
function zoomOut() {
99+
zoom = Math.max(0.5, zoom - 0.1);
100+
slide.style.transform = `scale(${zoom})`;
101+
}
102+
103+
function toggleFullscreen() {
104+
if (!document.fullscreenElement) {
105+
document.documentElement.requestFullscreen();
106+
} else {
107+
document.exitFullscreen();
108+
}
109+
}
110+
111+
// Placeholder – לשימוש עם תמונות
112+
function next() { console.log("Next slide"); }
113+
function prev() { console.log("Prev slide"); }
114+
115+
// Keyboard
116+
document.addEventListener("keydown", e => {
117+
if (e.key === "ArrowRight") next();
118+
if (e.key === "ArrowLeft") prev();
119+
if (e.key === "f") toggleFullscreen();
120+
});
121+
</script>
122+
123+
</body>
124+
</html>

0 commit comments

Comments
 (0)