# # ChangeLog for src/views/partials in Klonkt # # Generated by Trac 1.6 # 09/09/2026 03:09:12 PM Fri, 26 Jun 2026 13:01:54 GMT Robin Genis [c7c7f02] * src/routes/circle.js (modified) * src/services/ActivityPubService.js (modified) * src/views/partials/post-card.ejs (modified) * src/views/partials/post-tile.ejs (modified) feat(cirkel): render boosted posts in the pinned style with a Boost ... Fri, 26 Jun 2026 09:05:28 GMT Robin Genis [46f3dd6] * src/routes/posts.js (modified) * src/services/i18n.js (modified) * src/views/pages/timeline.ejs (modified) * src/views/pages/volgend.ejs (added) * src/views/partials/profile-sheet.ejs (modified) * src/views/partials/tl-tabs.ejs (added) * src/views/partials/topnav.ejs (modified) feat(fediverse): split Tijdlijn (feed) from Volgend (following) + put ... Fri, 26 Jun 2026 08:53:42 GMT Robin Genis [2c22bb5] * src/middleware/render.js (modified) * src/routes/circle.js (modified) * src/services/ActivityPubService.js (modified) * src/views/partials/view-switcher.ejs (modified) feat(cirkel): rebuild the Cirkel feed on ActivityPub (featured/auto- ... 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 ... Fri, 26 Jun 2026 08:28:21 GMT Robin Genis [066951c] * src/views/partials/profile-header.ejs (modified) style(fediverse): render follow logo at 24px inside the same 36px ... Fri, 26 Jun 2026 08:21:14 GMT Robin Genis [5d39e40] * src/views/partials/profile-header.ejs (modified) fix(fediverse): viewBox no longer clips the logo nodes The ... Fri, 26 Jun 2026 08:12:37 GMT Robin Genis [e7f6691] * src/views/partials/profile-header.ejs (modified) style(fediverse): crop the follow logo edge-to-edge (no viewBox ... Fri, 26 Jun 2026 08:09:07 GMT Robin Genis [df0516a] * src/views/partials/profile-header.ejs (modified) style(fediverse): enlarge the follow logo to ~90% of the circle ... Fri, 26 Jun 2026 08:03:09 GMT Robin Genis [356caeb] * src/views/partials/profile-header.ejs (modified) style(fediverse): place the follow button before the social links ... Fri, 26 Jun 2026 08:01:20 GMT Robin Genis [ce0bedf] * src/views/partials/profile-header.ejs (modified) fix(fediverse): use the Fediverse logo (inline SVG) for the follow ... Fri, 26 Jun 2026 07:26:26 GMT Robin Genis [283f618] * src/middleware/render.js (modified) * src/routes/activitypub.js (modified) * src/routes/admin-settings.js (modified) * src/services/SettingsService.js (modified) * src/services/i18n.js (modified) * src/views/pages/admin-settings.ejs (modified) * src/views/pages/admin.ejs (modified) * src/views/pages/post.ejs (modified) * src/views/partials/profile-header.ejs (modified) feat(fediverse): add an ActivityPub on/off toggle (off = no ... Thu, 25 Jun 2026 22:37:09 GMT Robin Genis [eb2fe08] * src/views/partials/profile-header.ejs (modified) ux(profile): fediverse-follow is a compact icon in the links row, ... Thu, 25 Jun 2026 22:25:57 GMT Robin Genis [67fe576] * src/routes/posts.js (modified) * src/services/i18n.js (modified) * src/views/pages/post.ejs (modified) * src/views/partials/fedi-node.ejs (modified) ux(fedi): owner can like/boost a fediverse comment directly too ... Thu, 25 Jun 2026 22:21:29 GMT Robin Genis [e91849c] * src/services/ActivityPubService.js (modified) * src/views/pages/post.ejs (modified) * src/views/partials/fedi-node.ejs (modified) ux(fedi): owner replies to a fediverse comment directly (no 'your ... Thu, 25 Jun 2026 21:10:27 GMT Robin Genis [7c62efb] * src/services/i18n.js (modified) * src/views/partials/profile-header.ejs (modified) feat(ap): add 'Follow via the fediverse' button to the profile header ... Thu, 25 Jun 2026 05:22:51 GMT Robin Genis [e951b7c] * src/middleware/render.js (modified) * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/views/partials/topnav.ejs (modified) feat(fediverse): real bell badge for unseen notifications Track a ... Wed, 24 Jun 2026 18:05:39 GMT Robin Genis [5410d4d] * src/routes/posts.js (modified) * src/views/pages/favorites.ejs (deleted) * src/views/partials/profile-sheet.ejs (modified) * src/views/partials/topnav.ejs (modified) Remove the dead Favourites feature (local likes replaced by fediverse ... 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: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 16:37:32 GMT Robin Genis [f6c414e] * src/services/i18n.js (modified) * src/views/pages/post.ejs (modified) * src/views/pages/timeline.ejs (modified) * src/views/partials/like-button.ejs (modified) feat(fediverse): star = like via your own fediverse account (server- ... Wed, 24 Jun 2026 16:18:25 GMT Robin Genis [82043c9] * src/views/partials/chrome.ejs (modified) fix(chrome): no profile-header/view-switcher on fediverse pages (on- ... Wed, 24 Jun 2026 16:14:13 GMT Robin Genis [19a72df] * src/views/partials/topnav.ejs (modified) fix(topnav): keep the bell, drop the duplicate Notifications menu ... Wed, 24 Jun 2026 16:08:34 GMT Robin Genis [f5c3870] * src/config/database.js (modified) * src/middleware/render.js (modified) * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/services/i18n.js (modified) * src/views/pages/admin.ejs (modified) * src/views/pages/blocks.ejs (added) * src/views/pages/timeline.ejs (modified) * src/views/partials/topnav.ejs (modified) feat(fediverse-client): block/defederate accounts & domains Block ... 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 13:58:33 GMT Robin Genis [c73ac64] * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/views/partials/fedi-node.ejs (modified) fix(activitypub): own replies show the site identity to everyone (not ... Wed, 24 Jun 2026 13:27:56 GMT Robin Genis [a885afc] * src/views/pages/post.ejs (modified) * src/views/partials/fedi-node.ejs (modified) fix(activitypub): pass locals explicitly into fedi-node include (500 ... Wed, 24 Jun 2026 13:24:23 GMT Robin Genis [7d932ce] * src/config/database.js (modified) * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/services/i18n.js (modified) * src/views/pages/authorize-interaction.ejs (modified) * src/views/pages/post.ejs (modified) * src/views/partials/fedi-node.ejs (added) feat(activitypub): nested threading + delete your own replies Inbox ... 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 16:02:51 GMT Robin Genis [3f4049e] * src/views/partials/chrome.ejs (modified) fix: hide view-switcher (Timeline/Grid + pager) on a fresh install ... Tue, 23 Jun 2026 14:54:36 GMT Robin Genis [cb01666] * .env.example (modified) * src/config/features.js (added) * src/middleware/render.js (modified) * src/middleware/site.js (modified) * src/routes/posts.js (modified) * src/server.js (modified) * src/views/pages/admin-site-edit.ejs (modified) * src/views/pages/admin.ejs (modified) * src/views/partials/profile-header.ejs (modified) feat: lite mode (KLONKT_AUDIO=off) — audio disabled, single codebase ... Tue, 23 Jun 2026 14:24:46 GMT Robin Genis [8f2f97c] * src/config/database.js (modified) * src/routes/admin-sites.js (modified) * src/routes/posts.js (modified) * src/routes/prutter.js (deleted) * src/server.js (modified) * src/services/PrutterService.js (deleted) * src/views/pages/admin-site-edit.ejs (modified) * src/views/pages/prutter-conversation.ejs (deleted) * src/views/pages/prutter-inbox.ejs (deleted) * src/views/pages/user.ejs (modified) * src/views/partials/bottom-tab.ejs (modified) * src/views/partials/topnav.ejs (modified) * src/views/shell.ejs (modified) Prutter (DM feature) fully removed Reason: redundant feature + ... Tue, 23 Jun 2026 13:58:13 GMT Robin Genis [3af8fa3] * src/views/partials/bottom-tab.ejs (modified) * src/views/partials/topnav.ejs (modified) i18n: search button aria-label/title via t('nav.search') instead of ... Sun, 21 Jun 2026 18:38:24 GMT roboburr [c9c6a2d] * src/config/database.js (modified) * src/middleware/render.js (modified) * src/routes/comments.js (modified) * src/routes/notifications.js (added) * src/routes/posts.js (modified) * src/server.js (modified) * src/services/NotificationService.js (added) * src/services/i18n.js (modified) * src/views/pages/notifications.ejs (added) * src/views/partials/bottom-tab.ejs (modified) * src/views/partials/profile-sheet.ejs (modified) * src/views/partials/topnav.ejs (modified) feat(meldingen): notifications — reply on comment, comment on post, ... Sun, 21 Jun 2026 17:46:01 GMT roboburr [49f698b] * src/views/partials/shared-styles.ejs (modified) style(switcher): mobile — Agenda on its own row at the top, rest ... Sun, 21 Jun 2026 17:26:47 GMT roboburr [097da22] * src/routes/search.js (modified) * src/services/i18n.js (modified) * src/views/pages/search.ejs (modified) * src/views/partials/topnav.ejs (modified) feat(zoeken): live results while typing + search in events & pages ... Sun, 21 Jun 2026 17:04:21 GMT roboburr [e579a98] * src/views/partials/bottom-tab.ejs (modified) fix(zoeken): bottom-tab search button stopped working after htmx ... Sun, 21 Jun 2026 11:45:21 GMT roboburr [fe86013] * src/services/i18n.js (modified) * src/views/pages/post.ejs (modified) * src/views/pages/search.ejs (modified) * src/views/partials/like-button.ejs (modified) feat(i18n phase 4): post comments/like/related + search page ... Sun, 21 Jun 2026 11:35:49 GMT roboburr [137cca5] * src/services/i18n.js (modified) * src/views/pages/auth-login.ejs (modified) * src/views/pages/auth-register.ejs (modified) * src/views/pages/welcome.ejs (modified) * src/views/partials/bottom-tab.ejs (modified) feat(i18n phase 3): welcome/first-run, login, register, bottom-tab ... 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 13:39:41 GMT roboburr [03fa548] * src/middleware/render.js (modified) * src/routes/lang.js (added) * src/server.js (modified) * src/services/i18n.js (added) * src/views/partials/footer.ejs (modified) * src/views/partials/post-nav.ejs (modified) * src/views/partials/topnav.ejs (modified) * src/views/partials/view-switcher.ejs (modified) feat(i18n): interface language NL/EN/DE with visitor switcher (phase ... 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 08:04:44 GMT roboburr [6eeb459] * src/views/pages/shows.ejs (modified) * src/views/partials/shared-styles.ejs (modified) feat(agenda): rest grey on calendar/downloads + Agenda as standalone ... Sat, 20 Jun 2026 07:57:56 GMT roboburr [1eff06a] * src/views/partials/shared-styles.ejs (modified) * src/views/partials/view-switcher.ejs (modified) refactor(nav): Agenda as its own pill (separate from Timeline/Grid) ... Sat, 20 Jun 2026 07:47:56 GMT roboburr [da4387b] * src/views/partials/shared-styles.ejs (modified) * src/views/shell.ejs (modified) fix(nav): stale page class after htmx nav + Agenda-active white - ... Sat, 20 Jun 2026 07:41:43 GMT roboburr [b200738] * src/views/partials/chrome.ejs (modified) * src/views/partials/shared-styles.ejs (modified) fix(downloads+agenda): downloads list gets header+pill; Solo/Circle ... Sat, 20 Jun 2026 07:35:49 GMT roboburr [d219d56] * src/views/partials/shared-styles.ejs (modified) fix(agenda): Timeline/Grid truly grey on the calendar page ... Sat, 20 Jun 2026 07:33:34 GMT roboburr [bad5c77] * src/views/partials/shared-styles.ejs (modified) fix(agenda): on the calendar page only Agenda active, Timeline/Grid ... Sat, 20 Jun 2026 07:30:37 GMT roboburr [0fcc09c] * src/views/partials/chrome.ejs (modified) feat(agenda): full chrome + pill kept on the calendar page Removed ... Sat, 20 Jun 2026 07:28:43 GMT roboburr [68b27a4] * src/middleware/render.js (modified) * src/routes/admin-shows.js (modified) * src/routes/shows.js (modified) * src/views/pages/admin-shows.ejs (modified) * src/views/partials/shared-styles.ejs (modified) * src/views/partials/view-switcher.ejs (modified) feat(agenda): Agenda opt-in — only shown when enabled + active on ... Sat, 20 Jun 2026 07:22:21 GMT roboburr [d7b5a6c] * src/views/partials/shared-styles.ejs (modified) * src/views/partials/view-switcher.ejs (modified) feat(nav): Agenda IN the Timeline/Grid pill (Agenda · Timeline · ... Sat, 20 Jun 2026 07:06:59 GMT roboburr [cf7c2d9] * src/views/pages/admin-shows.ejs (modified) * src/views/pages/shows.ejs (modified) * src/views/partials/shared-styles.ejs (modified) * src/views/partials/view-switcher.ejs (modified) feat(nav): Agenda link in the view-switcher + "shows" → "events" ... 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:09:30 GMT roboburr [459acd9] * src/views/partials/track-editor.ejs (modified) feat(editor): © insert button next to the credit field No more ... Sat, 20 Jun 2026 05:07:40 GMT roboburr [3ec691c] * src/views/partials/track-editor.ejs (modified) chore(editor): credit placeholder = neutral example name instead of ... 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 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 09:49:35 GMT roboburr [535f955] * CHANGELOG.md (modified) * src/config/database.js (modified) * src/routes/posts.js (modified) * src/views/pages/favorites.ejs (added) * src/views/pages/post.ejs (modified) * src/views/partials/like-button.ejs (added) * src/views/partials/profile-sheet.ejs (modified) * src/views/partials/topnav.ejs (modified) feat: post likes + favourites page for logged-in users - New ... Fri, 19 Jun 2026 09:40:04 GMT roboburr [8cdb377] * CHANGELOG.md (modified) * src/routes/posts.js (modified) * src/views/partials/post-nav.ejs (modified) ui(post-nav): show 📌 when the Newer/Older post is pinned ... Fri, 19 Jun 2026 09:38:20 GMT roboburr [1e2e9e7] * CHANGELOG.md (modified) * src/routes/posts.js (modified) * src/views/pages/fan-gate.ejs (modified) * src/views/pages/post.ejs (modified) * src/views/partials/post-nav.ejs (added) ui(fan-gate): show Newer/Older post navigation on the fan gate too ... Fri, 19 Jun 2026 09:09:45 GMT roboburr [90259da] * CHANGELOG.md (added) * package.json (modified) * src/routes/changelog.js (added) * src/server.js (modified) * src/views/pages/changelog.ejs (added) * src/views/partials/footer.ejs (modified) feat: release tracking — version in footer links to /changelog - ... Fri, 19 Jun 2026 08:37:28 GMT roboburr [da6fd02] * src/middleware/render.js (modified) * src/routes/admin-settings.js (modified) * src/views/pages/admin-settings.ejs (modified) * src/views/partials/footer.ejs (modified) newsletter: optional sign-up in the footer (toggle in Admin → ... Fri, 19 Jun 2026 06:55:07 GMT roboburr [84325b8] * src/views/partials/chrome.ejs (modified) chrome: feature pages headerless (own header) — topnav stays, profile ... 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:48:04 GMT roboburr [dbde7f8] * src/views/partials/topnav.ejs (modified) Fix: theme toggle stops working after htmx navigation (stacked ... 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 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 01:00:03 GMT roboburr [d8693e4] * src/views/partials/topnav.ejs (modified) User-menu dropdown: frosted-glass background (more transparent 66% + ... Wed, 17 Jun 2026 00:55:54 GMT roboburr [dc4c067] * src/views/partials/shared-styles.ejs (modified) View-switcher: pill centred between the two lines (equal space ... Wed, 17 Jun 2026 00:51:18 GMT roboburr [1dca23b] * src/views/partials/shared-styles.ejs (modified) View-switcher: margin-top back to 0.5rem (tight under the profile ... 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 ... Wed, 17 Jun 2026 00:29:16 GMT roboburr [79bba6e] * src/routes/prutter.js (modified) * src/views/pages/hub-home.ejs (modified) * src/views/pages/prutter-conversation.ejs (modified) * src/views/partials/chrome.ejs (modified) * src/views/shell.ejs (modified) Audio never jumps + hub topnav + Prutter chat mobile-first - Global ... Wed, 17 Jun 2026 00:12:59 GMT roboburr [44cf44d] * src/views/pages/hub-home.ejs (modified) * src/views/partials/topnav.ejs (modified) Audio: Admin/Account navigation via htmx (player stays alive, no ... Wed, 17 Jun 2026 00:03:39 GMT roboburr [3cd1aaa] * src/assets/css/style.css (modified) * src/middleware/render.js (modified) * src/views/partials/chrome.ejs (added) * src/views/shell.ejs (modified) Hub: chrome in #pcms-chrome slot + out-of-band swap on htmx → header ... Tue, 16 Jun 2026 23:35:13 GMT roboburr [03bfdce] * src/assets/css/style.css (modified) * src/views/pages/hub-home.ejs (modified) * src/views/partials/topnav.ejs (modified) * src/views/shell.ejs (modified) Hub: always render chrome + CSS toggle (body.on-hub) → hub nav via ... Tue, 16 Jun 2026 23:27:10 GMT roboburr [09ac0a5] * src/views/partials/bottom-tab.ejs (modified) Hub audio: mobile Home back on htmx (persistent player survives → no ... Tue, 16 Jun 2026 22:53:05 GMT roboburr [9915786] * src/views/partials/bottom-tab.ejs (modified) Hub mobile: Home button goes to the hub root instead of the artist ... Tue, 16 Jun 2026 22:46:39 GMT roboburr [e2a8e31] * src/views/partials/shared-styles.ejs (modified) Login: Google button centred (display:flex, fills the login column ... Tue, 16 Jun 2026 06:58:03 GMT roboburr [8aa85d0] * src/middleware/render.js (modified) * src/routes/prutter.js (modified) * src/services/PatreonService.js (modified) * src/views/pages/admin-settings.ejs (modified) * src/views/pages/user.ejs (modified) * src/views/partials/bottom-tab.ejs (modified) * src/views/partials/topnav.ejs (modified) Prutter = premium Hub feature: Hub-only + behind premium gate ... Tue, 16 Jun 2026 04:28:40 GMT roboburr [83faa57] * README.md (modified) * src/middleware/render.js (modified) * src/server.js (modified) * src/views/partials/footer.ejs (modified) Rebrand: "Klonkt Hub Beta" -> "Klonkt Beta" + version number in ... Tue, 16 Jun 2026 04:16:33 GMT roboburr [a742e9f] * src/views/partials/topnav.ejs (modified) Fix: top-nav profile menu shows 'God' for the god role instead of ... Tue, 16 Jun 2026 01:56:56 GMT roboburr [9f81a09] * src/assets/css/style.css (modified) * src/views/partials/bottom-tab.ejs (modified) * src/views/partials/topnav.ejs (modified) * src/views/partials/view-switcher.ejs (modified) Circles: Solo/Circle scope toggle in the switcher bar (left) + Circle ... Tue, 16 Jun 2026 01:52:09 GMT roboburr [43dbf9c] * src/routes/circle.js (modified) * src/views/pages/circle-feed.ejs (modified) * src/views/partials/post-card.ejs (modified) * src/views/partials/post-tile.ejs (modified) * src/views/shell.ejs (modified) Circles: /cirkel uses the home view (timeline + grid + switcher) - ... Tue, 16 Jun 2026 01:40:49 GMT roboburr [0908b8f] * src/views/partials/bottom-tab.ejs (modified) * src/views/partials/topnav.ejs (modified) Circles: Circle nav link (desktop + mobile) when tenancy=circle ... Mon, 15 Jun 2026 04:21:06 GMT roboburr [af5407f] * src/views/partials/shared-styles.ejs (modified) fix: view-switcher on post — active colour removed, buttons still ... Mon, 15 Jun 2026 04:10:26 GMT roboburr [11a6871] * src/views/partials/shared-styles.ejs (modified) style: grey out view-switcher on a standalone post Timeline/Grid + ... Mon, 15 Jun 2026 03:23:29 GMT roboburr [3e86f1c] * package.json (modified) * scripts/backfill-durations.mjs (added) * src/routes/admin-audio.js (modified) * src/services/AudioTranscoder.js (modified) * src/views/partials/track-editor.ejs (modified) feat: automatic track duration — no more manually entering seconds ... Mon, 15 Jun 2026 01:37:31 GMT roboburr [851239c] * src/views/pages/post-edit.ejs (modified) * src/views/partials/topnav.ejs (modified) fix: topnav home button (home icon) + post-edit save/cancel with ... Mon, 15 Jun 2026 01:18:56 GMT roboburr [bd7f10d] * src/views/partials/playlist-editor.ejs (modified) fix: playlist cover upload now works on create too (not only edit) ... Mon, 15 Jun 2026 01:06:49 GMT roboburr [b50a885] * src/views/pages/post-edit.ejs (modified) * src/views/partials/track-editor.ejs (modified) fix: cover URL field accepts relative /media/ paths (type=url -> ... Sun, 14 Jun 2026 18:35:59 GMT roboburr [a3169f5] * src/middleware/render.js (modified) * src/views/pages/hub-home.ejs (modified) * src/views/partials/profile-sheet.ejs (modified) * src/views/partials/topnav.ejs (modified) fix: viewer now sees the Admin link too (canSeeBeheer) The Admin ... Sun, 14 Jun 2026 18:07:51 GMT roboburr [8afbdd6] * README.md (modified) * package.json (modified) * src/middleware/auth.js (modified) * src/middleware/render.js (modified) * src/routes/admin-sites.js (modified) * src/routes/admin-users.js (modified) * src/routes/admin.js (modified) * src/routes/artists.js (added) * src/routes/hub.js (modified) * src/routes/posts.js (modified) * src/routes/prutter.js (modified) * src/server.js (modified) * src/views/pages/account.ejs (modified) * src/views/pages/admin-settings.ejs (modified) * src/views/pages/admin-users.ejs (modified) * src/views/pages/admin.ejs (modified) * src/views/pages/artists-directory.ejs (added) * src/views/pages/home.ejs (modified) * src/views/pages/hub-home.ejs (modified) * src/views/pages/my-site.ejs (modified) * src/views/pages/post.ejs (modified) * src/views/pages/viewer-blocked.ejs (added) * src/views/partials/bottom-tab.ejs (modified) * src/views/partials/footer.ejs (modified) * src/views/partials/profile-sheet.ejs (modified) * src/views/partials/topnav.ejs (modified) * src/views/shell.ejs (modified) feat: viewer role + artists directory + Klonkt Hub Beta rebrand ... Sun, 14 Jun 2026 17:25:41 GMT roboburr [b94c08e] * src/views/pages/home.ejs (modified) * src/views/pages/post.ejs (modified) * src/views/pages/search.ejs (modified) * src/views/partials/bottom-tab.ejs (modified) * src/views/partials/profile-sheet.ejs (modified) fix: all site-scoped links use siteUrlBase in hub mode Follow-up on ... Sun, 14 Jun 2026 17:13:12 GMT roboburr [7963a6e] * src/views/partials/post-card.ejs (modified) * src/views/partials/post-tile.ejs (modified) fix: feed post links use siteUrlBase (clicking did not work in hub) ... Sun, 14 Jun 2026 17:10:16 GMT roboburr [0c2228a] * src/routes/admin-users.js (modified) * src/views/pages/admin-users.ejs (modified) * src/views/partials/topnav.ejs (modified) hub: home button actually visible + delete for every user (cascade) ... Sun, 14 Jun 2026 16:59:38 GMT roboburr [42081fb] * src/middleware/render.js (modified) * src/views/partials/topnav.ejs (modified) hub: home button on user sites — masthead brand becomes the hub name ... Sun, 14 Jun 2026 16:49:24 GMT roboburr [ab544fd] * src/middleware/render.js (modified) * src/routes/hub.js (modified) * src/views/pages/hub-home.ejs (modified) * src/views/partials/profile-header.ejs (modified) fix: PrutFolio header + roster show the SITE OWNER's photo, not the ... Sun, 14 Jun 2026 16:17:14 GMT roboburr [8cb1dc7] * src/middleware/auth.js (modified) * src/middleware/render.js (modified) * src/routes/admin-comments.js (modified) * src/routes/admin-sites.js (modified) * src/routes/admin.js (modified) * src/views/pages/admin-comments.ejs (modified) * src/views/pages/hub-home.ejs (modified) * src/views/pages/my-site.ejs (added) * src/views/partials/topnav.ejs (modified) hub: artist self-management — owner manages their own subsite ...