<!DOCTYPE html>
<html lang="en" id="html-root" data-theme="dark">
<head>
{{template "head"}}
{{with gallery.ViewedDeck}}
<title>{{.Title}} - Presentation</title>
{{else}}
<title>Presentation - SkyDeck</title>
{{end}}
<!-- Presentation styles -->
<link rel="stylesheet" href="/public/styles/present.css" />
</head>
<body>
{{with gallery.ViewedDeck}}
<!-- Rotate prompt for mobile portrait -->
<div class="rotate-prompt">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5">
<rect x="4" y="2" width="16" height="20" rx="2" />
<path d="M12 18h.01" />
</svg>
<h2>Rotate Your Device</h2>
<p>This presentation is best viewed in landscape mode</p>
</div>
<a href="/deck/{{.ID}}" class="exit-btn btn btn-ghost btn-sm text-white/50 hover:text-white">
<svg class="w-5 h-5" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
<path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12" />
</svg>
Exit
</a>
<div id="slides-container">
<!-- Slides rendered by JS -->
</div>
<div class="progress-bar bg-primary" id="progress-bar"></div>
<div class="slide-counter" id="slide-counter">1 / 1</div>
<div class="nav-hint">← → or Space to navigate</div>
<script>
window.DECK_CONTENT = "{{.Content}}";
window.DECK_ID = "{{.ID}}";
</script>
<script src="/public/scripts/present.js"></script>
{{else}}
<div class="min-h-screen flex items-center justify-center bg-base-200">
<div class="text-center">
<div class="text-6xl mb-4">📊</div>
<h1 class="text-2xl font-bold mb-2">Deck Not Found</h1>
<a href="/" class="btn btn-primary mt-4">Back to Gallery</a>
</div>
</div>
{{end}}
</body>
</html>
Add rich text formatting and block styling to editor
Pitch decks to help promote Skyscape Apps