commit 5785d6d4c51c01111d282fbe785e4d33a9cb8d18
parent 401600201e502304205aa0656e32ebc2c31d0c80
Author: virtualtack <[email protected]>
Date: Sat, 26 Sep 2026 12:40:39 -0700
Snapshot of v1.10-dc34-88-ge799fa2
Diffstat:
5 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/SNAPSHOT.md b/SNAPSHOT.md
@@ -1,7 +1,7 @@
# About this snapshot
This repository is the public release of the OnlyN00bs badge, taken from its private
-development repo at `v1.10-dc34-87-g181cad5` on 2026-09-26. It holds what describes the **production unit
+development repo at `v1.10-dc34-88-ge799fa2` on 2026-09-26. It holds what describes the **production unit
as it is**: the firmware, the Web Bluetooth setup app, the site, the parts list, and the
case.
diff --git a/web/src/assets/badge.css b/web/src/assets/badge.css
@@ -287,3 +287,7 @@ dialog.lightbox figcaption { font-size: 13px; color: #bdbdbd; text-align: center
.lightbox .prev { left: 12px; top: 50%; transform: translateY(-50%); }
.lightbox .next { right: 12px; top: 50%; transform: translateY(-50%); }
.lightbox .count { position: fixed; top: 20px; left: 16px; font-size: 13px; color: #8b949e; }
+
+/* The gallery link at the top of the page (where the TL;DR box was): a plain accent link in
+ the page's lowercase `//` voice, not a second call-to-action competing with setup. */
+.top-link { margin: 20px 0 8px; }
diff --git a/web/src/gallery/index.html b/web/src/gallery/index.html
@@ -17,7 +17,7 @@
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="https://badge.virtualshack.io/assets/img/og-badge.jpg">
<!-- ?v= must match CACHE in ../sw.js — same rule as index.html -->
-<link rel="stylesheet" href="../assets/badge.css?v=34">
+<link rel="stylesheet" href="../assets/badge.css?v=35">
<link rel="icon" type="image/svg+xml" href="../assets/icon.svg">
<link rel="manifest" href="../manifest.webmanifest">
<meta name="theme-color" content="#212121">
diff --git a/web/src/index.html b/web/src/index.html
@@ -32,7 +32,7 @@
invisible to visitors for hours after a deploy. A new query = a new edge cache key =
it lands immediately. Safe for offline: sw.js matches with ignoreSearch, so this still
resolves to the precached bare URL. -->
-<link rel="stylesheet" href="assets/badge.css?v=34">
+<link rel="stylesheet" href="assets/badge.css?v=35">
<link rel="icon" type="image/svg+xml" href="assets/icon.svg">
<link rel="manifest" href="manifest.webmanifest">
<meta name="theme-color" content="#212121">
@@ -44,6 +44,8 @@
<p class="tagline">a friend-finder badge for def con 34 · firmware v1.10</p>
<p class="small muted"><a href="https://virtualshack.io/">virtualshack.io</a> / badge</p>
+ <p class="top-link"><a href="gallery/">// photos from the con →</a></p>
+
<p style="text-align:center"><a class="cta" href="provision/">Set up my badge →</a></p>
<!-- Changelog. Newest first, CAPPED AT THE 3 MOST RECENT — add to the top and drop the
diff --git a/web/src/sw.js b/web/src/sw.js
@@ -17,7 +17,7 @@
* there is one version to remember, not two.
*/
-const CACHE = "onlyn00bs-v34";
+const CACHE = "onlyn00bs-v35";
// Resolved against the worker's own location, so it's right whether the site is served at
// / (production) or under a path (a local preview).