# # ChangeLog for src/assets in Klonkt # # Generated by Trac 1.6 # 09/09/2026 05:50:42 PM Mon, 29 Jun 2026 20:51:05 GMT roboburr [7475ff3] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) style: drop the 0.4px blur on cover thumbnails - ... Sun, 28 Jun 2026 17:33:42 GMT Robin Genis [3038fc9] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) fix(images): list-cover placeholder in style.css (inline cascade ... Sun, 28 Jun 2026 17:25:46 GMT Robin Genis [a64d705] * src/assets/css/style.css (modified) * src/views/partials/post-card.ejs (modified) * src/views/shell.ejs (modified) feat(images): accent-gradient placeholder while covers load + fade-in ... Sun, 28 Jun 2026 11:20:05 GMT Robin Genis [2f919c0] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) fix(grid): restore pinned/boosted accent ring over the new cover ... Sun, 28 Jun 2026 11:16:48 GMT Robin Genis [69a10e7] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) style(covers): subtle 0.4px blur on grid + timeline covers to smooth ... Sun, 28 Jun 2026 11:05:58 GMT Robin Genis [2eca083] * src/assets/css/style.css (modified) * src/views/pages/post.ejs (modified) * src/views/partials/post-tile.ejs (modified) * src/views/shell.ejs (modified) fix(images): render grid + related covers as (no jagged ... Sun, 28 Jun 2026 10:47:29 GMT Robin Genis [73cffc3] * src/assets/js/audio-player.js (modified) * src/views/shell.ejs (modified) feat(player): remember volume + mute across sessions (localStorage) ... Sat, 27 Jun 2026 21:53:29 GMT Robin Genis [d2b7247] * deploy/DEPLOY.md (modified) * deploy/backup.sh (modified) * deploy/nginx.conf.example (modified) * deploy/post-receive (modified) * ecosystem.config.cjs (modified) * src/assets/css/audio.css (modified) * src/assets/css/style.css (modified) * src/db/migrations/001-init.sql (modified) * src/views/partials/bottom-tab.ejs (modified) * src/views/partials/chrome.ejs (modified) * src/views/partials/topnav.ejs (modified) chore(branding): stale product names in comments + deploy templates ... Sat, 27 Jun 2026 13:12:24 GMT Robin Genis [6ea5f92] * src/assets/fonts/OFL.txt (added) docs(fonts): add SIL OFL 1.1 license for the bundled fonts - ... Sat, 27 Jun 2026 13:03:36 GMT Robin Genis [a78e051] * src/assets/css/style.css (modified) * src/views/partials/profile-header.ejs (modified) * src/views/shell.ejs (modified) fix(ui): avatar placeholder opens popup + smaller wrapping source ... Sat, 27 Jun 2026 08:30:29 GMT Robin Genis [cb95343] * src/assets/css/embed.css (modified) * src/assets/js/embed-player.js (modified) * src/views/shell.ejs (modified) fix(embeds): plain responsive iframe on mobile/touch The custom ... Sat, 27 Jun 2026 07:51:44 GMT Robin Genis [837fc9c] * src/assets/css/style.css (modified) * src/config/database.js (modified) * src/routes/activitypub.js (modified) * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/services/Scheduler.js (modified) * src/services/i18n.js (modified) * src/views/pages/post-edit.ejs (modified) * src/views/pages/post.ejs (modified) * src/views/partials/post-card.ejs (modified) * src/views/partials/post-tile.ejs (modified) * src/views/shell.ejs (modified) feat(posts): NSFW / sensitive content Mark a post NSFW (checkbox in ... Fri, 26 Jun 2026 17:10:47 GMT Robin Genis [cf4cf27] * src/assets/css/style.css (modified) * src/routes/circle.js (modified) * src/views/shell.ejs (modified) feat(circle): show only the post title in the feed + 2x larger source ... Fri, 26 Jun 2026 15:24:06 GMT Robin Genis [a036251] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) fix(ios): hand-built safe-area inset (env() returns 0 on iOS Safari + ... Fri, 26 Jun 2026 15:14:05 GMT Robin Genis [7ca3ffc] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) fix(ios): use env(safe-area-inset-*) directly instead of via a CSS ... Fri, 26 Jun 2026 10:20:37 GMT Robin Genis [cbe4f4e] * src/assets/css/style.css (modified) * src/views/pages/circle-feed.ejs (modified) * src/views/shell.ejs (modified) style: transparent covers on white everywhere (not just the Cirkel) ... Fri, 26 Jun 2026 08:37:56 GMT Robin Genis [3507b0b] * src/assets/css/style.css (modified) * src/views/partials/profile-header.ejs (modified) * src/views/shell.ejs (modified) fix(fediverse): follow button now shares the social-icon circle ... Thu, 25 Jun 2026 22:32:52 GMT Robin Genis [6cabd18] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) ux(grid): stack tile title + 'van ' credit instead of gluing ... Thu, 25 Jun 2026 19:14:31 GMT Robin Genis [b15415b] * src/assets/spinner.svg (added) fix(audio): add missing spinner.svg (CSS mask referenced it; was 404 ... Thu, 25 Jun 2026 14:02:59 GMT Robin Genis [6a51968] * src/assets/js/audio-player.js (modified) * src/views/shell.ejs (modified) audio: Media Session API for reliable mobile auto-advance + lock- ... Wed, 24 Jun 2026 17:43:08 GMT Robin Genis [6bee3ec] * src/assets/css/style.css (modified) * src/views/partials/post-tile.ejs (modified) * src/views/shell.ejs (modified) Pinned badge: white SVG pin icon instead of the multicolour 📌 emoji ... Wed, 24 Jun 2026 17:36:40 GMT Robin Genis [848b76d] * src/assets/css/style.css (modified) * src/views/pages/post.ejs (modified) * src/views/shell.ejs (modified) Prettier fediverse stats: monochrome line-icons + clean outline pills ... Wed, 24 Jun 2026 17:31:51 GMT Robin Genis [aadb11e] * src/assets/css/style.css (modified) * src/views/pages/circle-feed.ejs (modified) * src/views/pages/post.ejs (modified) * src/views/partials/like-button.ejs (deleted) * src/views/shell.ejs (modified) Fediverse UI: one ⭐ like, transparent circle logos, accent-following ... Wed, 24 Jun 2026 17:07:53 GMT Robin Genis [c9c70cc] * src/assets/css/style.css (modified) * src/middleware/site.js (modified) * src/services/ThemeService.js (modified) * src/views/shell.ejs (modified) Palettes overhaul: neutral 'Klonkt' default + 7 real-colour themes ... Wed, 24 Jun 2026 16:58:14 GMT Robin Genis [19fbe03] * src/assets/css/style.css (modified) * src/middleware/site.js (modified) * src/services/ThemeService.js (modified) * src/views/shell.ejs (modified) Palettes: drop Stone+Terracotta, add Ocean+Candy, rework warm to ... Wed, 24 Jun 2026 15:09:22 GMT Robin Genis [0dba092] * src/assets/css/style.css (modified) * src/views/pages/post.ejs (modified) * src/views/shell.ejs (modified) style(activitypub): reply field as a floating popover (zero layout ... Wed, 24 Jun 2026 15:06:21 GMT Robin Genis [749c183] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) style(activitypub): fixed CTA row height so the reply field doesn't ... Wed, 24 Jun 2026 14:59:22 GMT Robin Genis [c901131] * src/assets/css/style.css (modified) * src/services/i18n.js (modified) * src/views/pages/post.ejs (modified) * src/views/partials/fedi-node.ejs (modified) * src/views/shell.ejs (modified) style(activitypub): nicer reply-address field + localized placeholder ... Wed, 24 Jun 2026 14:55:01 GMT Robin Genis [40cf2ef] * src/assets/css/style.css (modified) * src/views/pages/post.ejs (modified) * src/views/shell.ejs (modified) style(activitypub): inline address form for reply-via-fediverse (no ... Wed, 24 Jun 2026 12:58:40 GMT Robin Genis [7f46112b] * src/assets/css/style.css (modified) * src/services/i18n.js (modified) * src/views/pages/post.ejs (modified) * src/views/shell.ejs (modified) feat(activitypub): per-comment reply-via-fediverse + clearer button ... Wed, 24 Jun 2026 12:44:21 GMT Robin Genis [3d7312a] * src/assets/css/style.css (modified) * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/services/i18n.js (modified) * src/views/pages/authorize-interaction.ejs (added) * src/views/pages/post.ejs (modified) * src/views/shell.ejs (modified) feat(activitypub): remote interaction — reply to any fediverse post ... Wed, 24 Jun 2026 12:16:43 GMT Robin Genis [3a2c9d3] * src/assets/css/style.css (modified) * src/services/i18n.js (modified) * src/views/pages/post.ejs (modified) * src/views/shell.ejs (modified) style(activitypub): match fediverse section to native comment styling ... Wed, 24 Jun 2026 12:09:08 GMT Robin Genis [55bc7f9] * src/assets/css/style.css (modified) * src/config/database.js (modified) * src/routes/activitypub.js (modified) * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/services/i18n.js (modified) * src/views/pages/post.ejs (modified) * src/views/shell.ejs (modified) feat(activitypub): reply back to the fediverse (Phase 4 outbound) ... Wed, 24 Jun 2026 11:49:19 GMT Robin Genis [47a0d29] * src/assets/css/style.css (modified) * src/views/pages/post.ejs (modified) * src/views/shell.ejs (modified) style(activitypub): polish fediverse section into clean comment cards ... Wed, 24 Jun 2026 11:44:23 GMT Robin Genis [c16e0a5] * src/assets/css/style.css (modified) * src/config/database.js (modified) * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/services/i18n.js (modified) * src/views/pages/post.ejs (modified) * src/views/shell.ejs (modified) feat(activitypub): inbound interactions — replies, likes, boosts ... Wed, 24 Jun 2026 05:26:24 GMT Robin Genis [69815b2] * package-lock.json (modified) * package.json (modified) * src/assets/fonts/fraunces-og.ttf (added) * src/middleware/render.js (modified) * src/routes/og.js (added) * src/server.js (modified) * src/services/OgImageService.js (added) * src/views/shell.ejs (modified) feat: auto-generated per-site OG image from palette + accent New ... Wed, 24 Jun 2026 04:54:25 GMT Robin Genis [5eef817] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) style: per-palette background gradient for every theme The fixed ... Tue, 23 Jun 2026 18:14:27 GMT Robin Genis [834bcc3] * scripts/backfill-durations.mjs (modified) * scripts/reset-admin.mjs (modified) * src/assets/js/audio-player.js (modified) * src/assets/js/embed-player.js (modified) * src/assets/js/smooth-scroll.js (modified) * src/config/database.js (modified) * src/config/features.js (modified) * src/config/google.js (modified) * src/config/mailer.js (modified) * src/middleware/auth.js (modified) * src/middleware/rate-limit.js (modified) * src/middleware/render.js (modified) * src/middleware/site.js (modified) * src/routes/account.js (modified) * src/routes/admin-audio.js (modified) * src/routes/admin-circle.js (modified) * src/routes/admin-comments.js (modified) * src/routes/admin-epk.js (modified) * src/routes/admin-newsletter.js (modified) * src/routes/admin-patreon.js (modified) * src/routes/admin-seo.js (modified) * src/routes/admin-settings.js (modified) * src/routes/admin-shows.js (modified) * src/routes/admin-sites.js (modified) * src/routes/admin-stats.js (modified) * src/routes/admin-updates.js (modified) * src/routes/admin-users.js (modified) * src/routes/admin.js (modified) * src/routes/artists.js (modified) * src/routes/audio.js (modified) * src/routes/auth.js (modified) * src/routes/changelog.js (modified) * src/routes/circle.js (modified) * src/routes/comments.js (modified) * src/routes/download.js (modified) * src/routes/embed.js (modified) * src/routes/epk.js (modified) * src/routes/federation.js (modified) * src/routes/hub.js (modified) * src/routes/lang.js (modified) * src/routes/linkbio.js (modified) * src/routes/newsletter.js (modified) * src/routes/notifications.js (modified) * src/routes/posts.js (modified) * src/routes/search.js (modified) * src/routes/shows.js (modified) * src/server.js (modified) * src/services/AudioEmbedService.js (modified) * src/services/AudioTranscoder.js (modified) * src/services/CircleFederation.js (modified) * src/services/CircleService.js (modified) * src/services/ImageWebpService.js (modified) * src/services/NotificationService.js (modified) * src/services/PatreonService.js (modified) * src/services/PermissionsService.js (modified) * src/services/PlaylistService.js (modified) * src/services/Scheduler.js (modified) * src/services/SettingsService.js (modified) * src/services/StatsService.js (modified) * src/services/SubscriberService.js (modified) * src/services/ThemeService.js (modified) * src/services/ensurePrimarySite.js (modified) * src/views/pages/account.ejs (modified) * src/views/pages/admin-circle.ejs (modified) * src/views/pages/admin-google.ejs (modified) * src/views/pages/admin-seo.ejs (modified) * src/views/pages/admin-settings.ejs (modified) * src/views/pages/admin-shows.ejs (modified) * src/views/pages/admin-site-edit.ejs (modified) * src/views/pages/admin-users.ejs (modified) * src/views/pages/auth-login.ejs (modified) * src/views/pages/circle-feed.ejs (modified) * src/views/pages/fan-gate.ejs (modified) * src/views/pages/hub-home.ejs (modified) * src/views/pages/post-edit.ejs (modified) * src/views/pages/post.ejs (modified) * src/views/partials/bottom-tab.ejs (modified) * src/views/partials/footer.ejs (modified) * src/views/partials/like-button.ejs (modified) * src/views/partials/post-nav.ejs (modified) * src/views/partials/shared-styles.ejs (modified) * src/views/partials/topnav.ejs (modified) * src/views/partials/track-editor.ejs (modified) i18n: translate Dutch code comments to English across src/ Comments ... Tue, 23 Jun 2026 15:51:59 GMT Robin Genis [5416101] * src/assets/css/style.css (modified) fix: klonkt palette dark = pure navy (no golden accent wash on the ... Mon, 22 Jun 2026 03:04:17 GMT roboburr [b20460e] * src/assets/css/style.css (modified) * src/middleware/site.js (modified) * src/services/ThemeService.js (modified) * src/views/shell.ejs (modified) style(theme): palettes Ocean + Gold removed (redundant after klonkt ... Mon, 22 Jun 2026 02:52:43 GMT roboburr [dd7e2a2] * src/assets/css/style.css (modified) * src/middleware/render.js (modified) * src/middleware/site.js (modified) * src/routes/admin-sites.js (modified) * src/routes/auth.js (modified) * src/server.js (modified) * src/services/ThemeService.js (modified) * src/views/shell.ejs (modified) feat(theme): default = Klonkt brand (dark navy + yellow, matches ... Mon, 22 Jun 2026 02:03:33 GMT roboburr [5eff581] * src/assets/img/cirkel-logo.svg (modified) * src/views/pages/circle-feed.ejs (modified) style(circles): larger arrowheads Co-Authored-By: Claude ... Mon, 22 Jun 2026 01:59:02 GMT roboburr [b4c845e] * src/assets/img/cirkel-logo.svg (modified) * src/views/pages/circle-feed.ejs (modified) style(circles): ring removed + clearer (filled) arrows, larger ... Mon, 22 Jun 2026 01:50:00 GMT roboburr [050aa02] * src/assets/img/cirkel-logo.svg (modified) * src/views/pages/circle-feed.ejs (modified) style(circles): cleaner icon (thin lines, fine nodes) + subtle accent ... Mon, 22 Jun 2026 01:38:13 GMT roboburr [628056f] * src/assets/img/cirkel-logo.svg (modified) * src/views/pages/circle-feed.ejs (modified) feat(circles): new vectorised icon via CSS mask (accent colour) as ... Mon, 22 Jun 2026 01:28:34 GMT roboburr [546f102] * src/assets/img/cirkel-logo.svg (modified) * src/views/pages/circle-feed.ejs (modified) feat(circles): icon exactly matching reference — 3 hollow nodes, ... Mon, 22 Jun 2026 01:23:35 GMT roboburr [d29f427] * src/assets/img/cirkel-logo.svg (modified) chore(circles): standalone logo file synced with the new clean icon ... Mon, 22 Jun 2026 01:08:29 GMT roboburr [cd69b6a] * src/assets/img/cirkel-logo.svg (added) * src/views/pages/circle-feed.ejs (modified) feat(circles): new network logo as header on the /cirkel page Ring ... Sun, 21 Jun 2026 20:14:38 GMT roboburr [0251bae] * src/assets/css/style.css (modified) * src/services/ThemeService.js (modified) * src/views/shell.ejs (modified) feat(themes): more colour variety — fewer greens/blues in accents + ... Sun, 21 Jun 2026 16:19:21 GMT roboburr [48ebfa7] * src/assets/vendor/cropper.min.css (added) * src/assets/vendor/cropper.min.js (added) * src/services/i18n.js (modified) * src/views/pages/post-edit.ejs (modified) feat(editor): rotate/crop/mirror images before upload Cropper.js ... Sat, 20 Jun 2026 14:14:32 GMT roboburr [999aad2] * src/assets/css/style.css (modified) * src/services/ThemeService.js (modified) * src/views/shell.ejs (modified) feat(themes): preview colours synced with real CSS + 4 palettes + 4 ... Sat, 20 Jun 2026 14:04:32 GMT roboburr [83b8b8f] * src/assets/css/style.css (modified) * src/views/partials/topnav.ejs (modified) * src/views/shell.ejs (modified) feat(i18n): styled language dropdown in the header (instead of native ... Sat, 20 Jun 2026 13:59:32 GMT roboburr [2149f5a] * src/assets/css/style.css (modified) * src/views/pages/admin.ejs (modified) * src/views/partials/footer.ejs (modified) * src/views/partials/topnav.ejs (modified) * src/views/shell.ejs (modified) feat(i18n): language dropdown (NL/EN/DE) in the header nav instead of ... Sat, 20 Jun 2026 13:54:27 GMT roboburr [66cfbaa] * src/assets/css/style.css (modified) * src/views/partials/footer.ejs (modified) * src/views/shell.ejs (modified) fix: grid columns (2/3/4) work on all feeds + readable language ... Sat, 20 Jun 2026 09:01:46 GMT roboburr [92bad27] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) revert(layout): remove scrollbar-gutter — caused a phantom dead ... Sat, 20 Jun 2026 08:59:22 GMT roboburr [2e454455] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) fix(layout): scrollbar-gutter: stable — no content shift between ... Sat, 20 Jun 2026 08:55:18 GMT roboburr [703ead3] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) fix(downloads): post width with higher specificity (.container.post- ... Sat, 20 Jun 2026 08:53:59 GMT roboburr [210a9cb] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) fix(downloads): same post width as a real post .post-page ... Sat, 20 Jun 2026 08:45:30 GMT roboburr [45d22b1] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) fix(posts): cover image shows in full (no crop) .post-cover img had ... Sat, 20 Jun 2026 08:29:48 GMT roboburr [d8c6a83] * src/assets/css/style.css (modified) * src/routes/download.js (modified) * src/routes/posts.js (modified) * src/views/pages/downloads.ejs (modified) * src/views/shell.ejs (modified) fix(downloads+posts): post nav on downloads page + post images full ... Sat, 20 Jun 2026 08:19:11 GMT roboburr [1c6d61c] * src/assets/css/style.css (modified) * src/views/partials/shared-styles.ejs (modified) * src/views/partials/view-switcher.ejs (modified) * src/views/shell.ejs (modified) fix(nav): Timeline/Grid active state via aria-selected (htmx-robust) ... Sat, 20 Jun 2026 08:11:45 GMT roboburr [4dcefa1] * src/assets/css/style.css (modified) * src/views/partials/shared-styles.ejs (modified) * src/views/partials/view-switcher.ejs (modified) * src/views/shell.ejs (modified) fix(agenda): robust grey-on-calendar (htmx-proof) via source rule + ... Sat, 20 Jun 2026 06:36:10 GMT roboburr [0f11c69] * src/assets/js/audio-player.js (modified) * src/views/shell.ejs (modified) change(player): player bar only appears on first audio click The ... Sat, 20 Jun 2026 05:45:30 GMT roboburr [903f10b] * src/assets/css/audio.css (modified) * src/views/shell.ejs (modified) fix(audio): larger cover thumbnail on link-only track (44→64px) ... Sat, 20 Jun 2026 05:43:49 GMT roboburr [a66f691] * src/assets/css/audio.css (modified) * src/services/AudioEmbedService.js (modified) * src/views/shell.ejs (modified) fix(audio): link-only track shows cover (instead of music note) A ... Sat, 20 Jun 2026 05:37:42 GMT roboburr [d727e92] * src/assets/css/audio.css (modified) * src/routes/admin-audio.js (modified) * src/routes/posts.js (modified) * src/services/AudioEmbedService.js (modified) * src/services/PlaylistService.js (modified) * src/views/pages/admin-audio.ejs (modified) * src/views/shell.ejs (modified) feat(audio): tracks without audio (link-only) — list with open-in ... Sat, 20 Jun 2026 05:23:08 GMT roboburr [183875b] * src/assets/css/audio.css (modified) * src/config/database.js (modified) * src/routes/admin-audio.js (modified) * src/routes/posts.js (modified) * src/services/AudioEmbedService.js (modified) * src/services/PlaylistService.js (modified) * src/views/partials/track-editor.ejs (modified) * src/views/shell.ejs (modified) feat(audio): per-track "open in" Spotify/YouTube/SoundCloud links ... Sat, 20 Jun 2026 05:04:13 GMT roboburr [0d7acdf] * src/assets/css/audio.css (modified) * src/config/database.js (modified) * src/routes/admin-audio.js (modified) * src/routes/posts.js (modified) * src/services/AudioEmbedService.js (modified) * src/services/AudioTranscoder.js (modified) * src/views/partials/track-editor.ejs (modified) * src/views/shell.ejs (modified) feat(audio): per-track owner/credit + license (+ written to mp3 ID3 ... Sat, 20 Jun 2026 04:46:35 GMT roboburr [fef781e] * src/assets/css/embed.css (modified) * src/assets/js/audio-player.js (modified) * src/assets/js/embed-player.js (modified) * src/routes/audio.js (modified) * src/services/AudioEmbedService.js (modified) * src/views/pages/post-edit.ejs (modified) * src/views/shell.ejs (modified) revert: remove YouTube audio functionality (doesn't work) YouTube ... Sat, 20 Jun 2026 04:42:18 GMT roboburr [8ab20b6] * src/assets/js/audio-player.js (modified) * src/views/shell.ejs (modified) fix(player): muted start to work around YouTube autoplay block ... Sat, 20 Jun 2026 04:39:28 GMT roboburr [8d43aa1] * src/assets/js/audio-player.js (modified) * src/assets/js/embed-player.js (modified) * src/views/shell.ejs (modified) fix(player): prewarm hidden YT player (autoplay within gesture) The ... Sat, 20 Jun 2026 04:31:01 GMT roboburr [e056e56] * src/assets/js/audio-player.js (modified) * src/assets/js/embed-player.js (modified) * src/views/shell.ejs (modified) fix(player): YT album via queue expansion (reliable playback) ... Sat, 20 Jun 2026 04:28:31 GMT roboburr [71e8fa5] * src/assets/js/audio-player.js (modified) * src/assets/js/embed-player.js (modified) * src/views/shell.ejs (modified) fix(player): YT playlist now plays (listType:'playlist') ... Sat, 20 Jun 2026 04:22:32 GMT roboburr [d43ea3f] * src/assets/css/embed.css (modified) * src/assets/js/audio-player.js (modified) * src/assets/js/embed-player.js (modified) * src/views/shell.ejs (modified) feat(embed): YouTube playlist/album as audio on the site An ... Sat, 20 Jun 2026 04:08:28 GMT roboburr [b56afa7] * src/assets/js/embed-player.js (modified) * src/routes/audio.js (modified) * src/views/shell.ejs (modified) feat(embed): show real YouTube title on the audio-only card YT ... Sat, 20 Jun 2026 04:03:58 GMT roboburr [976d36d] * src/assets/js/audio-player.js (modified) * src/assets/js/embed-player.js (modified) * src/views/shell.ejs (modified) fix(embed): bar-free square cover for YouTube audio hqdefault is ... Sat, 20 Jun 2026 03:53:58 GMT roboburr [9e6b54f] * src/assets/css/embed.css (modified) * src/assets/js/audio-player.js (modified) * src/assets/js/embed-player.js (modified) * src/views/shell.ejs (modified) feat(player): YouTube audio via the site audio player (continuous ... Sat, 20 Jun 2026 03:42:00 GMT roboburr [73b41eb] * src/assets/css/embed.css (modified) * src/assets/js/embed-player.js (modified) * src/services/AudioEmbedService.js (modified) * src/views/pages/post-edit.ejs (modified) * src/views/shell.ejs (modified) feat(embed): YouTube audio-only option in posts Per embed you now ... Sat, 20 Jun 2026 03:04:22 GMT roboburr [557a76f] * src/assets/css/embed.css (modified) * src/assets/js/embed-player.js (modified) * src/views/shell.ejs (modified) feat(embed): volume slider + mute for YouTube & SoundCloud YT/SC ... Sat, 20 Jun 2026 02:54:09 GMT roboburr [2873b30] * src/assets/js/embed-player.js (modified) * src/views/shell.ejs (modified) fix(embed): Spotify directly as bare iframe (instant, no API wait) ... Sat, 20 Jun 2026 02:52:15 GMT roboburr [16b0c00] * src/assets/js/embed-player.js (modified) * src/server.js (modified) * src/views/shell.ejs (modified) fix(embed): Spotify API via CSP whitelist + faster fallback ... Sat, 20 Jun 2026 02:37:34 GMT roboburr [5f47671] * src/assets/js/audio-player.js (modified) * src/routes/search.js (modified) * src/views/shell.ejs (modified) fix: tablet opens full-player + clean search snippet - ... Sat, 20 Jun 2026 02:17:12 GMT roboburr [5258945] * src/assets/css/style.css (modified) * src/assets/js/audio-player.js (modified) * src/views/shell.ejs (modified) feat(player): persistent highlight on the active track The ... Sat, 20 Jun 2026 02:09:51 GMT roboburr [359b9ae] * src/assets/css/style.css (modified) * src/routes/posts.js (modified) * src/services/AudioEmbedService.js (modified) * src/views/shell.ejs (modified) fix(player): scroll-to-track also from album & playlist Album track ... Sat, 20 Jun 2026 01:52:46 GMT roboburr [fa08981] * src/assets/js/audio-player.js (modified) * src/routes/audio.js (modified) * src/views/shell.ejs (modified) fix(player): scroll-to-track works for site-wide tracks too ... Sat, 20 Jun 2026 01:38:16 GMT roboburr [230e446] * src/assets/css/style.css (modified) * src/assets/js/audio-player.js (modified) * src/services/AudioEmbedService.js (modified) * src/views/shell.ejs (modified) feat(player): mini-player jumps to post AND scrolls to the track ... Sat, 20 Jun 2026 01:32:20 GMT roboburr [d188736] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) feat: images harder to save (right-click + drag blocked) Friction ... Sat, 20 Jun 2026 01:28:36 GMT roboburr [1f0c85b] * src/assets/css/style.css (modified) * src/views/partials/post-tile.ejs (modified) * src/views/shell.ejs (modified) ui(grid): show source site on hover on circle feed tiles Grid tiles ... Fri, 19 Jun 2026 12:45:07 GMT roboburr [5d68686] * CHANGELOG.md (modified) * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) ui(mobile): hide scrollbars on touch (pointer:coarse) @media ... Fri, 19 Jun 2026 11:50:23 GMT roboburr [9ef3c56] * CHANGELOG.md (modified) * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) fix(mobile): hide fixed bottom bars when the keyboard is open ... Fri, 19 Jun 2026 08:25:35 GMT roboburr [977f65d] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) ui: date/time picker in site theme (dark/light follows toggle) + ... Fri, 19 Jun 2026 08:08:06 GMT roboburr [2900f1d] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) fix: button text unreadable on hover (a:hover overrode accent button ... Thu, 18 Jun 2026 07:24:25 GMT roboburr [0dbb5c1] * src/assets/js/audio-player.js (modified) * src/views/shell.ejs (modified) Mini player: clickable on desktop → navigates to the associated post ... Wed, 17 Jun 2026 04:02:46 GMT roboburr [441f5d6] * src/assets/css/style.css (modified) * src/views/partials/bottom-tab.ejs (modified) * src/views/partials/topnav.ejs (modified) * src/views/shell.ejs (modified) Login navigation via htmx (audio no longer jumps when opening login) ... Wed, 17 Jun 2026 03:52:13 GMT roboburr [125e0e1] * src/assets/css/audio.css (modified) * src/views/shell.ejs (modified) Fix: audio player floating on the auth/login screen (mobile) The ... Wed, 17 Jun 2026 03:34:07 GMT roboburr [93d6345] * src/assets/css/style.css (modified) * src/views/partials/footer.ejs (modified) * src/views/shell.ejs (modified) Theme scrollbar + install button in the footer row (no longer a ... Wed, 17 Jun 2026 02:07:28 GMT roboburr [c3ad46d] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) Fix: horizontal clipping on html (not body) — no h-scroll + fixed ... Wed, 17 Jun 2026 01:59:24 GMT roboburr [d5b9d2a] * src/assets/css/style.css (modified) * src/views/shell.ejs (modified) Fix: bottom tab scrolls with the page on mobile (overflow-x ... Wed, 17 Jun 2026 01:03:25 GMT roboburr [c2a9522] * src/assets/css/style.css (modified) * src/views/partials/topnav.ejs (modified) * src/views/shell.ejs (modified) User-menu dropdown frosted blur now works: masthead backdrop-filter ... Wed, 17 Jun 2026 00:46:48 GMT roboburr [ee25d45] * src/assets/css/style.css (modified) * src/views/partials/shared-styles.ejs (modified) View-switcher: margin-top 1.5rem in shared-styles (the winning inline ...