Skip to content

Commit 1efcd16

Browse files
brannnclaude
andcommitted
Add Simplex in 5 Minutes interactive overview
- Add /overview route with vanilla JS interactive presentation - Add floating "Simplex in 5 Minutes" badge on all pages (right-aligned below nav) - Create 7-episode walkthrough covering Simplex fundamentals - Include hero, text, cards, code examples, pillars, landmarks, and planner sections - Implement smooth transitions, fade-ins, and keyboard navigation - Badge scales responsively with page content - Overview module bundled from proposals/ directory (untracked) - Zero dependencies: pure vanilla JavaScript, no React/Babel overhead Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
1 parent 01e80a7 commit 1efcd16

6 files changed

Lines changed: 886 additions & 0 deletions

File tree

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,3 +36,7 @@ Gemfile.lock
3636

3737
# Planning (internal drafts)
3838
planning/
39+
40+
# Proposals (internal demos - bundled but not tracked)
41+
proposals/simplex-overview.js
42+
proposals/simplex-overview.jsx

web/Dockerfile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,10 @@ RUN go mod download
1818
# Copy web source code
1919
COPY web/ ./
2020

21+
# Copy proposals directory for bundling (simplex-overview.js)
22+
COPY proposals/ /app/proposals/
23+
RUN cp /app/proposals/simplex-overview.js ./cmd/server/static/js/simplex-overview.js || true
24+
2125
# Build the binary
2226
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o simplex-web ./cmd/server
2327

web/cmd/server/static/css/styles.css

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,59 @@ body {
148148
color: white;
149149
}
150150

151+
/* Floating Overview Badge */
152+
.overview-badge {
153+
position: fixed;
154+
top: 73px;
155+
left: 50%;
156+
transform: translateX(-50%);
157+
max-width: 1400px;
158+
width: 100%;
159+
z-index: 999;
160+
pointer-events: none;
161+
display: flex;
162+
justify-content: flex-end;
163+
padding: 0 2rem;
164+
}
165+
166+
.overview-badge-inner {
167+
pointer-events: auto;
168+
background: linear-gradient(135deg, rgba(218, 119, 86, 0.95), rgba(232, 149, 110, 0.95));
169+
color: white;
170+
padding: 0.25rem 0.625rem;
171+
border-radius: 9999px;
172+
font-size: 0.6875rem;
173+
font-weight: 600;
174+
text-decoration: none;
175+
box-shadow: 0 2px 6px rgba(218, 119, 86, 0.4), 0 1px 2px rgba(0, 0, 0, 0.3);
176+
transition: transform 0.2s, box-shadow 0.2s;
177+
display: flex;
178+
align-items: center;
179+
gap: 0.25rem;
180+
}
181+
182+
.overview-badge-inner:hover {
183+
transform: translateY(-1px);
184+
box-shadow: 0 3px 8px rgba(218, 119, 86, 0.5), 0 2px 3px rgba(0, 0, 0, 0.4);
185+
color: white;
186+
}
187+
188+
.overview-badge-icon {
189+
font-size: 0.625rem;
190+
}
191+
192+
@media (max-width: 768px) {
193+
.overview-badge {
194+
top: 70px;
195+
padding: 0 1rem;
196+
}
197+
198+
.overview-badge-inner {
199+
font-size: 0.625rem;
200+
padding: 0.2rem 0.5rem;
201+
}
202+
}
203+
151204
/* GitHub star count badge */
152205
.github-star-count {
153206
display: inline-block;

web/cmd/server/static/js/common.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,20 @@ document.addEventListener('DOMContentLoaded', () => {
7272
})
7373
.catch(() => {});
7474
}
75+
76+
// Add floating overview badge (except on overview page itself)
77+
if (!window.location.pathname.includes('/overview')) {
78+
const badgeContainer = document.createElement('div');
79+
badgeContainer.className = 'overview-badge';
80+
81+
const badgeLink = document.createElement('a');
82+
badgeLink.href = '/overview';
83+
badgeLink.className = 'overview-badge-inner';
84+
badgeLink.innerHTML = '<span class="overview-badge-icon">▶</span><span>Simplex in 5 Minutes</span>';
85+
86+
badgeContainer.appendChild(badgeLink);
87+
document.body.appendChild(badgeContainer);
88+
}
7589
});
7690

7791
// Smooth scroll with offset for fixed navbar

0 commit comments

Comments
 (0)