Timeline
06/27/2026:
- 21:53 Changeset in Klonkt [d2b7247]main by
- chore(branding): stale product names in comments + deploy templates -> …
- 21:46 Changeset in Klonkt [abdcf33]main by
- chore(cleanup): remove the dead comments_moderation_mode column + …
- 15:04 Changeset in Klonkt [3746f6a]main by
- chore: drop the last dead Google CSS (.auth-google / .btn-google) from …
- 15:01 Changeset in Klonkt [5f483e3]main by
- chore: code cleanup — remove dead files, deps, DB tables, Google-login …
- 14:18 Changeset in Klonkt [98fe58a]main by
- docs(changelog): rewrite — accurate, user-facing, no contradictions - …
- 13:58 Changeset in Klonkt [eb5f978]main by
- feat(changelog): i18n the public changelog (English base + nl/de) - …
- 13:48 Changeset in Klonkt [0960c1d]main by
- fix(fedi): tidy the Follow-via-fediverse modal - …
- 13:44 Changeset in Klonkt [923235e]main by
- feat(setup): note the username is permanent + becomes your fediverse …
- 13:39 Changeset in Klonkt [8d054ca]main by
- fix(ui): reply textareas no longer open huge (auto-resize skips hidden …
- 13:24 Changeset in Klonkt [8951629]main by
- docs: translate CI/Docker comments to English - …
- 13:16 Changeset in Klonkt [fcc9f25]main by
- docs: translate the Build & Test section of CLAUDE.md to English - …
- 13:12 Changeset in Klonkt [6ea5f92]main by
- docs(fonts): add SIL OFL 1.1 license for the bundled fonts - …
- 13:07 Changeset in Klonkt [196e1be]main by
- docs(lite): clarify Lite mode is reversible (env flag + restart, no …
- 13:03 Changeset in Klonkt [a78e051]main by
- fix(ui): avatar placeholder opens popup + smaller wrapping source …
- 12:42 Changeset in Klonkt [0a7ba90]main by
- fix(theme): a site renders in its own palette, not the logged-in …
- 12:28 Changeset in Klonkt [204bd74]main by
- fix(fedi): mention link href = profile URL, actor URI in the Mention …
- 12:22 Changeset in Klonkt [04c70fc]main by
- style(fedi): neater Edit button — pill in the foot row (left), like …
- 12:15 Changeset in Klonkt [dd7daef]main by
- feat(fedi): inline @mentions in replies federate (resolve + link + …
- 12:04 Changeset in Klonkt [bddbfe0]main by
- feat(fedi): edit your own outbound replies (Update(Note)) - …
- 11:56 Changeset in Klonkt [7cea873]main by
- fix(fedi): link inline #hashtags in post bodies too (federate as …
- 11:52 Changeset in Klonkt [6bc2ca7e]main by
- fix(fedi): hashtags in replies federate as Hashtag tags + clickable …
- 10:56 Changeset in Klonkt [30f843c]main by
- style(stats): tidier "what do these numbers mean" panel - …
- 10:52 Changeset in Klonkt [67aea12]main by
- docs: remove the obsolete Circles v1 spec (Ed25519 pull → replaced by …
- 10:50 Changeset in Klonkt [ce16d8a]main by
- docs(readme): Circles is ActivityPub now, not the old Ed25519 protocol …
- 10:45 Changeset in Klonkt [f1ce47a]main by
- fix(profile): replace native prompt() with a styled follow modal - …
- 10:33 Changeset in Klonkt [7eddb3b]main by
- feat(profile): fediverse-follow button in the avatar summary modal - …
- 10:27 Changeset in Klonkt [c6bd87e]main by
- fix(fedi): resolve PeerTube videos (array attributedTo) as a reply …
- 10:06 Changeset in Klonkt [f3551ec]main by
- fix(post-edit): typing a content-warning auto-ticks the NSFW checkbox …
- 09:37 Changeset in Klonkt [07de464]main by
- fix(csp): global frame-src (https:) for embeds, locked to 'self' on …
- 09:30 Changeset in Klonkt [5421ce1]main by
- fix(csp): per-domain frame-src for cross-site embeds on the document …
- 09:14 Changeset in Klonkt [ca0ad44]main by
- feat(news): surface embedUrl + a direct "open the player" link - …
- 09:02 Changeset in Klonkt [a3e0746]main by
- fix(sw): do not intercept cross-origin iframe navigations (PWA embeds) …
- 08:30 Changeset in Klonkt [cb95343]main by
- fix(embeds): plain responsive iframe on mobile/touch The custom …
- 08:17 Changeset in Klonkt [9e4e4ff]main by
- feat(ap): self-heal also re-syncs NSFW/sensitive + CW onto cached …
- 08:13 Changeset in Klonkt [c21197a]main by
- style(settings): tidier 18+ notice — subtle callout box instead of a …
- 08:10 Changeset in Klonkt [b7d4458]main by
- feat(nsfw): custom content-warning text + blur in the Cirkel - …
- 08:00 Changeset in Klonkt [92f6976]main by
- feat(settings): 18+ notice + confirm when activating Circles …
- 07:51 Changeset in Klonkt [837fc9c]main by
- feat(posts): NSFW / sensitive content Mark a post NSFW (checkbox in …
- 07:36 Changeset in Klonkt [aa45208]main by
- fix(track-editor): backdrop click no longer closes the editor A …
- 07:34 Changeset in Klonkt [280c007]main by
- chore: 1.0.0-rc1 — first release candidate Co-Authored-By: Claude …
- 07:29 Changeset in Klonkt [f99c830]main by
- docs(handleiding): rewrite the fediverse sections to match the current …
- 07:15 Changeset in Klonkt [74d61e6]main by
- feat(fedi): boosting a non-followed post shows it in the Cirkel The …
- 07:08 Changeset in Klonkt [dcff893]main by
- feat(fedi): interact bookmarklet on the My-replies page A …
- 01:04 Changeset in Klonkt [80c36a1]main by
- feat(fedi): fans-only = followers-only federation (option A) A …
- 00:59 Changeset in Klonkt [e390844]main by
- feat(post): hide 'Interact via the fediverse' CTA for the owner/admin …
- 00:57 Changeset in Klonkt [1b99225]main by
- feat(profile): click avatar -> profile summary modal (contacts, since, …
- 00:47 Changeset in Klonkt [16e99e5]main by
- chore(admin): drop the fediverse quick-links from the dashboard News …
- 00:20 Changeset in Klonkt [00a2bcd]main by
- feat(profile): click the profile photo to open it in a lightbox When …
- 00:16 Changeset in Klonkt [cd6a008]main by
- fix(fedi): preserve newlines when federating to Mastodon Klonkt …
- 00:08 Changeset in Klonkt [ace5a9b]main by
- feat(fedi): 'Go to post' button on My-replies cards Each sent reply …
- 00:04 Changeset in Klonkt [7e66e7e]main by
- feat(fedi): hide the leading @mention in displayed comments A …
06/26/2026:
- 23:55 Changeset in Klonkt [0a75356]main by
- feat(news): feed like+boost toggle in place (fetch, no reload, no …
- 23:50 Changeset in Klonkt [9d34855]main by
- fix(news): feed like is a toggle too (like/unlike), like boost The …
- 23:45 Changeset in Klonkt [c7ecaf9]main by
- feat(fedi): like/boost toggle in place on the interact page (no …
- 23:41 Changeset in Klonkt [2f42b60]main by
- style(fedi): nicer card layout for Notifications + My-replies …
- 23:38 Changeset in Klonkt [3d37c67]main by
- feat(fedi): interact page like/boost are 2 icon+label toggle buttons …
- 23:30 Changeset in Klonkt [3289a64]main by
- feat(fedi): comment like is a toggle too (Undo Like / un-favourite) …
- 23:25 Changeset in Klonkt [c745659]main by
- feat(fedi): comment boost is a toggle with state + coloured action …
- 17:17 Changeset in Klonkt [eacd3d6]main by
- feat(admin): Solo/Circles mode selector at top of settings + fix …
- 17:10 Changeset in Klonkt [cf4cf27]main by
- feat(circle): show only the post title in the feed + 2x larger source …
- 17:04 Changeset in Klonkt [eefd302]main by
- feat(fedi): rename feed Newspaper -> News (/newspaper -> /news) EN …
- 17:02 Changeset in Klonkt [69e7a79]main by
- style(timeline): pinned indicator is a pin icon (accent), boost a …
- 16:56 Changeset in Klonkt [9327a85]main by
- fix(ios-pwa): drop the top safe-area inset in landscape (island is on …
- 16:49 Changeset in Klonkt [f6b2c68]main by
- fix(ios-pwa): pad body for safe-area when masthead is hidden on mobile …
- 16:33 Changeset in Klonkt [1c85964]main by
- debug(ios): richer safe-area overlay (masthead/profile rects) + SW …
- 16:23 Changeset in Klonkt [7eee449]main by
- style(fedi): white bg behind feed/following avatars (transparent PNG …
- 16:15 Changeset in Klonkt [bca83f3]main by
- feat(fedi): autofill remembers only the last server (drop the …
- 16:14 Changeset in Klonkt [781d613]main by
- feat(newspaper): drop redundant '🎵 listen on' line when Klonkt player …
- 16:10 Changeset in Klonkt [d22b55c]main by
- feat(fedi): Bandcamp+Apple Music embeds in feed, server autofill, …
- 16:02 Changeset in Klonkt [84903a1]main by
- feat(newspaper): embed followed Klonkt sites' audio player inline …
- 15:56 Changeset in Klonkt [0fa59c3]main by
- feat(fedi): rename Timeline tab/route to Newspaper (/timeline -> …
- 15:50 Changeset in Klonkt [cb3d5fc]main by
- style(tijdlijn): coloured SVG action icons (no emoji), uniform 36px …
- 15:42 Changeset in Klonkt [b8bbe77]main by
- debug(ios): temporary on-screen readout of …
- 15:32 Changeset in Klonkt [76f0e61]main by
- fix(ios pwa): force masthead safe-area inline + detect standalone + …
- 15:24 Changeset in Klonkt [a036251]main by
- fix(ios): hand-built safe-area inset (env() returns 0 on iOS Safari + …
- 15:14 Changeset in Klonkt [7ca3ffc]main by
- fix(ios): use env(safe-area-inset-*) directly instead of via a CSS var …
- 15:03 Changeset in Klonkt [dee7f02]main by
- style(fedi): remove the extra tab headroom + reduce wrapper top margin …
- 14:49 Changeset in Klonkt [474a5ed]main by
- style(mobile): drop fedi-tabs headroom, keep only the iOS safe-area inset
- 14:45 Changeset in Klonkt [8c4bfcc]main by
- style(mobile): fedi-tabs headroom back to 1.5rem (applies to Android …
- 14:41 Changeset in Klonkt [f46f2be]main by
- style(ios): reduce fedi-tabs top headroom on mobile (1.5rem -> .5rem …
- 14:38 Changeset in Klonkt [c0e00a2]main by
- fix(ios): safe-area top for fullscreen editor toolbar + fedi tabs on …
- 14:31 Changeset in Klonkt [fdd0d61]main by
- style(tijdlijn): show full images (no crop/letterbox) + more headroom …
- 14:28 Changeset in Klonkt [79d1281]main by
- fix(fedi): /notifications showed old (tab-less) view — route collision …
- 14:26 Changeset in Klonkt [c69267f]main by
- style(fedi): unify all fediverse page widths to 640px (pixel-perfect …
- 14:21 Changeset in Klonkt [2e45a369]main by
- fix(fedi): Following tab 500'd — render call pointed to missing …
- 14:16 Changeset in Klonkt [c27c945]main by
- fix(tijdlijn): white background behind images (transparent PNGs), not …
- 14:14 Changeset in Klonkt [297c77d]main by
- refactor(fedi): English URL paths + equal-width tabs + back-to-site in …
- 14:01 Changeset in Klonkt [1ecbf71]main by
- feat(tijdlijn): graphical redesign + inline embeds (others' media) - …
- 13:56 Changeset in Klonkt [5e3be97]main by
- style(fedi-tabs): full-width back button, centered tabs, no scrollbar …
- 13:50 Changeset in Klonkt [9e5438e]main by
- feat(fedi): unify Timeline/Following/Replies/Notifications/Blocking …
- 13:36 Changeset in Klonkt [8334d27]main by
- chore(beads): file follow-delivery retry as a later feature
- 13:30 Changeset in Klonkt [a6e6f63]main by
- tweak(volgend): drop the 'What do these options do?' heading, keep the …
- 13:29 Changeset in Klonkt [73045f9]main by
- fix(volgend): featured toggle confirmation said 'Auto-boost' -> …
- 13:26 Changeset in Klonkt [fda08c2]main by
- refactor(fedi): remove the 'boost latest 5' feature Dropped at …
- 13:23 Changeset in Klonkt [98ceadd]main by
- feat(volgend): explain box above the follow options (what Featured / …
- 13:17 Changeset in Klonkt [54d2f98]main by
- feat(fedi): add 'back to site' button on Timeline + Notifications …
- 13:13 Changeset in Klonkt [b6cdc3d]main by
- feat(fedi): like/boost/reply on the interaction page + display-only …
- 13:01 Changeset in Klonkt [c7c7f02]main by
- feat(cirkel): render boosted posts in the pinned style with a Boost …
- 12:50 Changeset in Klonkt [bbce8da]main by
- feat(ap): log source IP on dropped/rejected/ignored inbox hits So an …
- 12:32 Changeset in Klonkt [4c47eff]main by
- refactor(cirkel): remove the legacy circle auto-migration (no …
- 12:16 Changeset in Klonkt [78b6d8a]main by
- feat(tijdlijn): unboost button — retract a boost (Undo Announce) from …
- 12:01 Changeset in Klonkt [3384e95]main by
- chore(beads): close se8 (boosts in cirkel) + 8z2 (anti-loop, moot)
- 12:00 Changeset in Klonkt [5045c30]main by
- feat(cirkel): boosted posts also appear in the Cirkel (mixed by date, …
- 11:16 Changeset in Klonkt [484adf8]main by
- feat(cirkel): featuring is local-only; optional one-time 'boost latest …
- 10:26 Changeset in Klonkt [5783c67]main by
- fix(volgend): auto-boost checkbox rendered huge — scope the text-input …
- 10:23 Changeset in Klonkt [98688c6]main by
- feat(fediverse): follow a site by its bare domain (site.com), not only …
- 10:20 Changeset in Klonkt [cbe4f4e]main by
- style: transparent covers on white everywhere (not just the Cirkel) …
- 10:17 Changeset in Klonkt [72bf38f]main by
- fix(cirkel): white bg on list-view covers (.post-list-cover img, not …
- 10:08 Changeset in Klonkt [fdfd31b]main by
- style(cirkel): transparent PNG covers on a white background …
- 10:04 Changeset in Klonkt [a404018]main by
- chore(beads): close 5gl (fediverse-cache self-heal)
- 10:04 Changeset in Klonkt [b79466e]main by
- feat(fediverse): self-heal the timeline cache once per …
- 10:00 Changeset in Klonkt [14e2ce1]main by
- chore(beads): track fediverse-cache self-heal on major updates
- 09:49 Changeset in Klonkt [c628db10]main by
- fix(fediverse): expose cover via Note.image for player-card posts …
- 09:39 Changeset in Klonkt [5ceed61]main by
- chore(beads): track anti-feedback-loop guard for showing cirkel boosts
- 09:33 Changeset in Klonkt [355364c]main by
- fix(cirkel): migrate ALL circle links, not just status='active' Old …
- 09:28 Changeset in Klonkt [d71ed03]main by
- feat(cirkel): auto-migrate legacy circle_links to auto-boost on boot …
- 09:23 Changeset in Klonkt [1968592]main by
- chore(beads): track inbound Update(Note) edit-propagation bug
- 09:21 Changeset in Klonkt [429d3b0]main by
- fix(migrate-circles): resolve relative 302 Location to an absolute …
- 09:20 Changeset in Klonkt [8ef8c3e]main by
- feat(cirkel): remove the old Cirkels pull-protocol; Cirkels is now …
- 09:05 Changeset in Klonkt [46f3dd6]main by
- feat(fediverse): split Tijdlijn (feed) from Volgend (following) + put …
- 08:53 Changeset in Klonkt [2c22bb5]main by
- feat(cirkel): rebuild the Cirkel feed on ActivityPub …
- 08:45 Changeset in Klonkt [49b1b39]main by
- chore(beads): track fediverse quote-post support (prutfolio-src-b12) …
- 08:37 Changeset in Klonkt [3507b0b]main by
- fix(fediverse): follow button now shares the social-icon circle (32px) …
- 08:28 Changeset in Klonkt [066951c]main by
- style(fediverse): render follow logo at 24px inside the same 36px …
- 08:21 Changeset in Klonkt [5d39e40]main by
- fix(fediverse): viewBox no longer clips the logo nodes The …
- 08:12 Changeset in Klonkt [e7f6691]main by
- style(fediverse): crop the follow logo edge-to-edge (no viewBox …
- 08:09 Changeset in Klonkt [df0516a]main by
- style(fediverse): enlarge the follow logo to ~90% of the circle …
- 08:03 Changeset in Klonkt [356caeb]main by
- style(fediverse): place the follow button before the social links …
- 08:01 Changeset in Klonkt [ce0bedf]main by
- fix(fediverse): use the Fediverse logo (inline SVG) for the follow …
- 07:47 Changeset in Klonkt [f278df9]main by
- feat(fediverse): auto-boost a followed account ('feature an artist') …
- 07:26 Changeset in Klonkt [283f618]main by
- feat(fediverse): add an ActivityPub on/off toggle (off = no …
06/25/2026:
- 22:37 Changeset in Klonkt [eb2fe08]main by
- ux(profile): fediverse-follow is a compact icon in the links row, …
- 22:32 Changeset in Klonkt [6cabd18]main by
- ux(grid): stack tile title + 'van <source>' credit instead of gluing …
- 22:25 Changeset in Klonkt [67fe576]main by
- ux(fedi): owner can like/boost a fediverse comment directly too …
- 22:21 Changeset in Klonkt [e91849c]main by
- ux(fedi): owner replies to a fediverse comment directly (no 'your …
- 22:14 Changeset in Klonkt [2902320]main by
- ux(fedi): make clear a remote reply lands on the source post, not this …
- 22:04 Changeset in Klonkt [33c1999]main by
- fix(admin): shorter label for the fediverse Beheer button (was …
- 21:47 Changeset in Klonkt [cbcc8a4]main by
- chore: tidy premium config docs
- 21:44 Changeset in Klonkt [678769e]main by
- docs(help): refresh handleiding for post-type selector, inline audio …
- 21:41 Changeset in Klonkt [820bceb]main by
- feat(admin): add a fediverse (my replies) link to the Beheer dashboard …
- 21:30 Changeset in Klonkt [cb4eda5]main by
- feat(premium): gate premium extras by default (KLONKT_PREMIUM_ENABLED …
- 21:16 Changeset in Klonkt [2acdbc5]main by
- fix(editor): foto hint says cover is 'below' (type panel sits above …
- 21:13 Changeset in Klonkt [fc2b68b]main by
- chore: track issue tracker
- 21:10 Changeset in Klonkt [7c62efb]main by
- feat(ap): add 'Follow via the fediverse' button to the profile header …
- 21:08 Changeset in Klonkt [8ad1784]main by
- feat(ap): authorize_interaction handles actor URIs as a Follow The …
- 20:52 Changeset in Klonkt [4c12783]main by
- perf(ap): backfill new followers once per remote instance, not per …
- 20:45 Changeset in Klonkt [a9900ec]main by
- chore: tidy issue tracker
- 20:45 Changeset in Klonkt [75ab393]main by
- feat(ratelimit): cap fediverse endpoints per IP; key IPv6 limiters by …
- 20:13 Changeset in Klonkt [49edc72]main by
- fix(ap): /ap/notes/:id redirects browsers to the human post page …
- 19:55 Changeset in Klonkt [bf4596d]main by
- feat(editor): post type on top (segmented) + type-aware inputs Bart's …
- 19:31 Changeset in Klonkt [fd95b1b]main by
- bd: redact 3 fediverse hardening issues (kept exploit detail out of …
- 19:14 Changeset in Klonkt [b15415b]main by
- fix(audio): add missing spinner.svg (CSS mask referenced it; was 404 …
- 19:11 Changeset in Klonkt [0c8768a]main by
- premium price: display €14 -> $16 (USD campaign charges $16; gate …
- 18:40 Changeset in Klonkt [44da3ee]main by
- chore: drop legacy PrutCMS-v9 post-import scripts (not referenced; …
- 18:28 Changeset in Klonkt [7cc58bb]main by
- premium price: $10 -> €14 (~$16) across salespage, i18n (nl/en/de), …
- 18:12 Changeset in Klonkt [f0c3f83]main by
- docs(patreon): correct the premium-modules comment (hub removed; list …
- 17:56 Changeset in Klonkt [7a235bc]main by
- feat(updates): make the in-app updater GitHub/upstream-aware for …
- 14:02 Changeset in Klonkt [6a51968]main by
- audio: Media Session API for reliable mobile auto-advance + …
- 13:47 Changeset in Klonkt [c648b04]main by
- docs: call out Node.js 20+ requirement in the self-hosting section …
- 09:52 Changeset in Klonkt [3dd99d3]main by
- harden(fediverse): SSRF guard, remote-URL XSS scheme-guard, scoped …
- 09:36 Changeset in Klonkt [4b5223f]main by
- fediverse: federate external embeds as a bare URL link (Mastodon …
- 09:13 Changeset in Klonkt [55bba23]main by
- fediverse: federate pin order via Add/Remove activities (reliable, …
- 07:31 Changeset in Klonkt [f9f3312]main by
- feat(fediverse): auto-backfill recent posts to new followers on Follow …
- 07:18 Changeset in Klonkt [2af2e69]main by
- fediverse: emit featured collection reversed (Mastodon displays pins …
- 07:11 Changeset in Klonkt [5085b1d]main by
- fediverse: cache-buster on music listen-link to force a fresh SQUARE …
- 07:08 Changeset in Klonkt [f1e0c1f]main by
- fediverse: push actor Update on pin/unpin so Mastodon refreshes the …
- 06:54 Changeset in Klonkt [75bda38]main by
- feat(fediverse): expose pinned posts via the actor's featured …
- 06:47 Changeset in Klonkt [abb34d2]main by
- embed player: slim themed scrollbar for the track list (was the chunky …
- 06:38 Changeset in Klonkt [98b7fdd]main by
- fediverse: square (1:1) player card (480x480) so the cover fits …
- 06:34 Changeset in Klonkt [6c3d805]main by
- fediverse: taller embed player card (160 -> 400) for more room …
- 06:13 Changeset in Klonkt [30271e6]main by
- fix(fediverse): player card only for playable (hosted) audio; scope …
- 05:57 Changeset in Klonkt [2923a95]main by
- feat(fediverse): audio posts skip image attachment so Mastodon shows …
- 05:37 Changeset in Klonkt [ca25f360]main by
- feat(fediverse): federate post edits as Update (Mastodon refreshes …
- 05:27 Changeset in Klonkt [4c9c60b]main by
- feat(fediverse): player card for music posts (embed player, no raw …
- 05:22 Changeset in Klonkt [e951b7c]main by
- feat(fediverse): real bell badge for unseen notifications Track a …
- 05:20 Changeset in Klonkt [d7526bd]main by
- feat(fediverse): NodeInfo 2.1 + per-note replies collection NodeInfo …
- 05:15 Changeset in Klonkt [5a6a457]main by
- feat(fediverse): federate on save+scheduler, delivery retry-queue, …
06/24/2026:
- 18:48 Changeset in Klonkt [99234c3]main by
- docs(handleiding): hub->circle, add Fediverse section, drop Google …
- 18:43 Changeset in Klonkt [0850535]main by
- changelog: hub removed, fediverse client, palette overhaul; bump …
- 18:41 Changeset in Klonkt [7008b28]main by
- docs: update README — hub removed, fediverse-native (drop …
- 18:05 Changeset in Klonkt [5410d4d]main by
- Remove the dead Favourites feature (local likes replaced by fediverse …
- 18:00 Changeset in Klonkt [e6272d1]main by
- fediverse comments: clean mobile meta (wrap name/handle, date on its …
- 17:56 Changeset in Klonkt [a8399a6]main by
- fediverse: shorten server prompt to just 'your server' (accepts …
- 17:52 Changeset in Klonkt [2279f80]main by
- fediverse: open 'view on source' in the same tab (drop target=_blank) …
- 17:48 Changeset in Klonkt [0aa23cf]main by
- fix(fediverse): ⭐ star now actually likes (was landing on the reply …
- 17:43 Changeset in Klonkt [6bee3ec]main by
- Pinned badge: white SVG pin icon instead of the multicolour 📌 emoji …
- 17:38 Changeset in Klonkt [62dea30]main by
- editor: remove the 'Start writing…' placeholder (lingered behind …
- 17:36 Changeset in Klonkt [848b76d]main by
- Prettier fediverse stats: monochrome line-icons + clean outline pills …
- 17:32 Changeset in Klonkt [b2c3699]main by
- Remove dead .post-like-row CSS (the element is gone) Co-Authored-By: …
- 17:31 Changeset in Klonkt [aadb11e]main by
- Fediverse UI: one ⭐ like, transparent circle logos, accent-following …
- 17:26 Changeset in Klonkt [48ca5fc]main by
- Remove hub mode (step 2/2): delete dead hub routes & views Remove …
- 17:23 Changeset in Klonkt [dd856db]main by
- Remove hub mode (step 1/2): keystone coercion + drop hub UI …
- 17:17 Changeset in Klonkt [34076d7]main by
- feat(appearance): live theme preview in site settings Selecting an …
- 17:07 Changeset in Klonkt [c9c70cc]main by
- Palettes overhaul: neutral 'Klonkt' default + 7 real-colour themes - …
- 16:58 Changeset in Klonkt [19fbe03]main by
- Palettes: drop Stone+Terracotta, add Ocean+Candy, rework warm to …
- 16:49 Changeset in Klonkt [9cc0f9f]main by
- fix(theme): use the validated palette in the shell (dead palette broke …
- 16:37 Changeset in Klonkt [f6c414e]main by
- feat(fediverse): star = like via your own fediverse account …
- 16:31 Changeset in Klonkt [434c2e9]main by
- Trim palettes to 8 (drop Sage/Rose/Midnight near-duplicates) Sage …
- 16:24 Changeset in Klonkt [8485b64]main by
- Remove the Gold accent colour (unused; redundant with …
- 16:18 Changeset in Klonkt [82043c9]main by
- fix(chrome): no profile-header/view-switcher on fediverse pages …
- 16:14 Changeset in Klonkt [19a72df]main by
- fix(topnav): keep the bell, drop the duplicate Notifications menu item …
- 16:08 Changeset in Klonkt [f5c3870]main by
- feat(fediverse-client): block/defederate accounts & domains Block an …
- 15:59 Changeset in Klonkt [d0cab9d]main by
- feat(security): enforce HTTP signatures on the inbox Data-affecting …
- 15:27 Changeset in Klonkt [00f669b]main by
- feat(fediverse-client): notifications inbox (/meldingen) Aggregates …
- 15:23 Changeset in Klonkt [d988fa0]main by
- feat(fediverse-client): like/boost/reply on timeline items Timeline …
- 15:19 Changeset in Klonkt [914eb9f]main by
- feat(fediverse-client): follow accounts + home timeline Klonkt can …
- 15:09 Changeset in Klonkt [0dba092]main by
- style(activitypub): reply field as a floating popover (zero layout …
- 15:06 Changeset in Klonkt [749c183]main by
- style(activitypub): fixed CTA row height so the reply field doesn't …
- 15:03 Changeset in Klonkt [f2fff7e]main by
- style(activitypub): reply field replaces the button in place (no …
- 15:01 Changeset in Klonkt [77ccd5d]main by
- style: neutral fediverse-address placeholder (@naam@…, not …
- 14:59 Changeset in Klonkt [c901131]main by
- style(activitypub): nicer reply-address field + localized placeholder …
- 14:55 Changeset in Klonkt [40cf2ef]main by
- style(activitypub): inline address form for reply-via-fediverse (no …
- 14:31 Changeset in Klonkt [dc8e9bd]main by
- fix(activitypub): deliver nested replies up the WHOLE chain (post …
- 14:26 Changeset in Klonkt [59f0170]main by
- refactor(comments): remove native comments — social is fediverse-only …
- 14:19 Changeset in Klonkt [2e9773f]main by
- fix(db): user_notifications boot crash on older DBs (missing columns) …
- 14:16 Changeset in Klonkt [075185a]main by
- refactor(auth): remove Google login (listeners now interact via the …
- 14:03 Changeset in Klonkt [5b47619]main by
- style(activitypub): tidy the /fediverse manage list into cards …
- 13:58 Changeset in Klonkt [c73ac64]main by
- fix(activitypub): own replies show the site identity to everyone (not …
- 13:56 Changeset in Klonkt [ffa53cc]main by
- fix(activitypub): no self-duplicate when replying on your own post …
- 13:53 Changeset in Klonkt [de3d24b]main by
- fix(activitypub): link owner's remote-reply to the local post so it …
- 13:45 Changeset in Klonkt [7c44c12]main by
- feat(account): editable username (does not affect the fediverse …
- 13:27 Changeset in Klonkt [a885afc]main by
- fix(activitypub): pass locals explicitly into fedi-node include (500 …
- 13:24 Changeset in Klonkt [7d932ce]main by
- feat(activitypub): nested threading + delete your own replies Inbox …
- 13:11 Changeset in Klonkt [cc24fa1]main by
- fix(activitypub): dedup guard on outbound replies (prevent …
- 13:04 Changeset in Klonkt [41a7637]main by
- fix(activitypub): instant Send + confirmation on remote reply Send …
- 12:58 Changeset in Klonkt [7f46112b]main by
- feat(activitypub): per-comment reply-via-fediverse + clearer button …
- 12:52 Changeset in Klonkt [2826bb97]main by
- feat(activitypub): full post on reply page + strip audio shortcodes …
- 12:47 Changeset in Klonkt [594cc50]main by
- fix(activitypub): remote-reply button — data attrs + delegated handler …
- 12:44 Changeset in Klonkt [3d7312a]main by
- feat(activitypub): remote interaction — reply to any fediverse post …
- 12:31 Changeset in Klonkt [82079ad]main by
- feat: one identity — user avatar falls back to the site photo …
- 12:23 Changeset in Klonkt [52ea6df]main by
- fix(activitypub): show site avatar on our own fediverse replies …
- 12:16 Changeset in Klonkt [3a2c9d3]main by
- style(activitypub): match fediverse section to native comment styling …
- 12:09 Changeset in Klonkt [55bc7f9]main by
- feat(activitypub): reply back to the fediverse (Phase 4 outbound) …
- 11:49 Changeset in Klonkt [47a0d29]main by
- style(activitypub): polish fediverse section into clean comment cards …
- 11:44 Changeset in Klonkt [c16e0a5]main by
- feat(activitypub): inbound interactions — replies, likes, boosts …
- 11:22 Changeset in Klonkt [eb852c5]main by
- feat(activitypub): federate post deletions (Delete + Tombstone) …
- 11:16 Changeset in Klonkt [5a93ac0]main by
- feat(activitypub): federate images as attachments Cover image + …
- 11:11 Changeset in Klonkt [065452a]main by
- fix(activitypub): include post title in the Note content Mastodon …
- 10:48 Changeset in Klonkt [dd1028a]main by
- fix(activitypub): content-negotiation on canonical URLs An AP request …
- 10:35 Changeset in Klonkt [5bf63b7]main by
- feat(activitypub): phase 1b — Follow/Accept, HTTP Signatures, delivery …
- 10:27 Changeset in Klonkt [6bd25d1]main by
- feat(activitypub): phase 1 — discoverable/fetchable actor (WebFinger, …
- 05:26 Changeset in Klonkt [69815b2]main by
- feat: auto-generated per-site OG image from palette + accent New …
- 04:54 Changeset in Klonkt [5eef817]main by
- style: per-palette background gradient for every theme The fixed …
06/23/2026:
- 22:00 Changeset in Klonkt [f99bbe8]main by
- security: bind to 127.0.0.1 by default behind a reverse proxy New …
- 21:25 Changeset in Klonkt [09ee2bd]main by
- feat: auto-generate SESSION_SECRET if not set (zero-config …
- 21:16 Changeset in Klonkt [45271b7]main by
- docs: clearer A/B/C for beginners + complete Option C Add a 'Good …
- 19:17 Changeset in Klonkt [a301d7a]main by
- docs: recommend a fresh/empty VPS for the one-command installer State …
- 18:42 Changeset in Klonkt [6d3e2c1]main by
- docs: lead with the one-command VPS installer (recommended), Docker …
- 18:16 Changeset in Klonkt [d774679]main by
- fix: auth-reset.ejs EJS comment broke compile (nested <% in <%# …
- 18:14 Changeset in Klonkt [834bcc3]main by
- i18n: translate Dutch code comments to English across src/ Comments …
- 17:35 Changeset in Klonkt [bb42dfb]main by
- docs: install.sh + .env.example to English (public repo) Translate …
- 17:25 Changeset in Klonkt [bbbfa3c]main by
- docs: README to English (public repo) Translate the repo front page …
- 17:17 Changeset in Klonkt [83088b66]main by
- feat: install.sh ready for public repo (roboburr/klonkt) - real …
- 17:06 Changeset in Klonkt [5a4c0b0]main by
- chore: AGPL-3.0 license + clean up repo metadata - LICENSE: full GNU …
- 16:57 Changeset in Klonkt [475eeda]main by
- feat: premium status badge on the admin dashboard Below the title, …
- 16:27 Changeset in Klonkt [fe6aac9]main by
- feat: Updates page shows the last 5 changes (git log) Admin -> …
- 16:16 Changeset in Klonkt [d5e78f7]main by
- fix: Vary: HX-Request + no-store on partials — no unstyled page on …
- 16:13 Changeset in Klonkt [184393c]main by
- docs: README updated to reflect current Klonkt Removed stale info …
- 16:02 Changeset in Klonkt [3f4049e]main by
- fix: hide view-switcher (Timeline/Grid + pager) on a fresh install …
- 15:57 Changeset in Klonkt [d8eb74c]main by
- fix: theme-init JS default palette 'sage' -> 'klonkt' (was overwriting …
- 15:53 Changeset in Klonkt [bff0b67]main by
- chore: style.css cache-buster v33 (navy klonkt-bg fix) …
- 15:51 Changeset in Klonkt [5416101]main by
- fix: klonkt palette dark = pure navy (no golden accent wash on the bg) …
- 15:45 Changeset in Klonkt [9b851e7]main by
- fix: fresh install uses klonkt defaults (navy + #e8b04b), not old …
- 14:54 Changeset in Klonkt [cb01666]main by
- feat: lite mode (KLONKT_AUDIO=off) — audio disabled, single codebase …
- 14:24 Changeset in Klonkt [8f2f97c]main by
- Prutter (DM feature) fully removed Reason: redundant feature + …
- 14:11 Changeset in Klonkt [24cdcc6]main by
- setup: first-run wizard (language choice + site name) on …
- 13:58 Changeset in Klonkt [3af8fa3]main by
- i18n: search button aria-label/title via t('nav.search') instead of …
06/22/2026:
- 14:05 Changeset in Klonkt [3bb8719]main by
- chore(version): bump 1.0.0-beta.3 + show commit hash in version …
- 13:58 Changeset in Klonkt [c9d48fc]main by
- fix(download): /bestand used storage_path (absolute) -> Bad path; now …
- 13:51 Changeset in Klonkt [17197a9]main by
- fix(download): track var 't' shadowed the i18n t() -> 500 on …
- 13:22 Changeset in Klonkt [1ce1ffe]main by
- i18n: feature name Circle -> Circles (plural) in NL/EN/DE; …
- 03:38 Changeset in Klonkt [814ad8b]main by
- feat(circles): site name automatically from the remote actor (no …
- 03:04 Changeset in Klonkt [b20460e]main by
- style(theme): palettes Ocean + Gold removed (redundant after klonkt …
- 02:52 Changeset in Klonkt [dd7e2a2]main by
- feat(theme): default = Klonkt brand (dark navy + yellow, matches …
- 02:03 Changeset in Klonkt [5eff581]main by
- style(circles): larger arrowheads Co-Authored-By: Claude …
- 01:59 Changeset in Klonkt [b4c845e]main by
- style(circles): ring removed + clearer (filled) arrows, larger network …
- 01:50 Changeset in Klonkt [050aa02]main by
- style(circles): cleaner icon (thin lines, fine nodes) + subtle accent …
- 01:38 Changeset in Klonkt [628056f]main by
- feat(circles): new vectorised icon via CSS mask (accent colour) as …
- 01:28 Changeset in Klonkt [546f102]main by
- feat(circles): icon exactly matching reference — 3 hollow nodes, …
- 01:23 Changeset in Klonkt [d29f427]main by
- chore(circles): standalone logo file synced with the new clean icon …
- 01:21 Changeset in Klonkt [92cd272]main by
- feat(circles): clean minimal network icon (hollow nodes + arrows) as …
- 01:12 Changeset in Klonkt [28d152e]main by
- fix(circles): logo header larger (112->200px) so it breathes like the …
- 01:08 Changeset in Klonkt [cd69b6a]main by
- feat(circles): new network logo as header on the /cirkel page Ring …
- 00:50 Changeset in Klonkt [face47a]main by
- fix(hub): show Owner select only in hub mode (removes solo footgun) …
06/21/2026:
- 23:51 Changeset in Klonkt [19b0727]main by
- ci: GitHub Actions — npm test + docker build op push/PR Klaar voor de …
- 23:12 Changeset in Klonkt [5a2cb69]main by
- feat(self-host): Docker-image + compose + quickstart-README …
- 23:01 Changeset in Klonkt [7bd97a6]main by
- bd: premium anti-bypass hardening plan (layers 1+2+4, layer 5 dropped) …
- 20:29 Changeset in Klonkt [2dc18c4]main by
- bd: GitHub distribution + self-host release issue (P1) …
- 20:14 Changeset in Klonkt [0251bae]main by
- feat(themes): more colour variety — fewer greens/blues in accents + …
- 19:31 Changeset in Klonkt [b27cde6]main by
- fix(posts): duplicate title/slug no longer rejected — auto-unique …
- 19:13 Changeset in Klonkt [1ee5f65]main by
- fix(i18n): & displayed literally — use plain & in values Several …
- 19:01 Changeset in Klonkt [c1b757d]main by
- feat(admin): Google setup revised — beginner-friendly explanation The …
- 18:52 Changeset in Klonkt [e25438a]main by
- fix(comments): reply form closed until REPLY click + DELETE …
- 18:41 Changeset in Klonkt [9a34d31]main by
- fix(notifications): table renamed to user_notifications (collision …
- 18:38 Changeset in Klonkt [c9c6a2d]main by
- feat(meldingen): notifications — reply on comment, comment on post, …
- 18:24 Changeset in Klonkt [d41f4be]main by
- fix(reacties): can now also reply to a reply (not just top-level …
- 17:46 Changeset in Klonkt [49f698b]main by
- style(switcher): mobile — Agenda on its own row at the top, rest below …
- 17:28 Changeset in Klonkt [fefb80c]main by
- fix(zoeken): translate page labels in suggest route (res.locals.t …
- 17:26 Changeset in Klonkt [097da22]main by
- feat(zoeken): live results while typing + search in events & pages - …
- 17:04 Changeset in Klonkt [e579a98]main by
- fix(zoeken): bottom-tab search button stopped working after htmx …
- 16:57 Changeset in Klonkt [2520dcc]main by
- feat(cirkel): add site without typing https:// A bare domain …
- 16:54 Changeset in Klonkt [d6bdbae]main by
- style(instellingen): styled selects instead of bare native dropdowns …
- 16:48 Changeset in Klonkt [421c2d4]main by
- feat(instellingen): site timezone — all dates + scheduling in chosen …
- 16:37 Changeset in Klonkt [9effb80]main by
- fix(editor): CSP blocked blob: image → empty edit dialog img-src was …
- 16:32 Changeset in Klonkt [015ce46]main by
- fix(inplannen): scheduled posts never went live + timezone bug (1) …
- 16:27 Changeset in Klonkt [5a394e5]main by
- fix(editor): empty edit dialog on mobile — crop zone had no height …
- 16:19 Changeset in Klonkt [48ebfa7]main by
- feat(editor): rotate/crop/mirror images before upload Cropper.js …
- 16:10 Changeset in Klonkt [75c6919]main by
- fix(mobiel): <fieldset> in admin forms doesn't shrink → entire form …
- 16:04 Changeset in Klonkt [d70cab7]main by
- fix(agenda-beheer): form grid overflowed on mobile .ash-grid was a …
- 16:01 Changeset in Klonkt [1664f31]main by
- fix(uiterlijk): links rows overflowed on mobile → horizontal overflow …
- 15:54 Changeset in Klonkt [11b3ba5]main by
- fix(editor): schedule publication behind an on/off toggle (no …
- 15:16 Changeset in Klonkt [5e61b17]main by
- feat(i18n): admin-configurable language — personal + default for …
- 15:05 Changeset in Klonkt [4885eab]main by
- feat(i18n phase 6): remaining public + other pages translated …
- 14:32 Changeset in Klonkt [bbf9d1a]main by
- feat(i18n phase 5): all admin sub-pages translated (NL/EN/DE) …
- 11:48 Changeset in Klonkt [929d98d]main by
- fix(i18n): search.ejs tracks loop shadowed t() → 500 function(t) in …
- 11:45 Changeset in Klonkt [fe86013]main by
- feat(i18n phase 4): post comments/like/related + search page …
- 11:35 Changeset in Klonkt [137cca5]main by
- feat(i18n phase 3): welcome/first-run, login, register, bottom-tab …
- 11:23 Changeset in Klonkt [bffb348]main by
- feat(i18n): per-instance default language via KLONKT_DEFAULT_LANG …
06/20/2026:
- 14:14 Changeset in Klonkt [999aad2]main by
- feat(themes): preview colours synced with real CSS + 4 palettes + 4 …
- 14:04 Changeset in Klonkt [83b8b8f]main by
- feat(i18n): styled language dropdown in the header (instead of native …
- 13:59 Changeset in Klonkt [2149f5a]main by
- feat(i18n): language dropdown (NL/EN/DE) in the header nav instead of …
- 13:54 Changeset in Klonkt [66cfbaa]main by
- fix: grid columns (2/3/4) work on all feeds + readable language …
- 13:50 Changeset in Klonkt [91c0a39]main by
- feat(i18n phase 2): admin dashboard + public calendar/downloads …
- 13:39 Changeset in Klonkt [03fa548]main by
- feat(i18n): interface language NL/EN/DE with visitor switcher (phase …
- 12:51 Changeset in Klonkt [d0f4c10]main by
- feat(admin): searchable Manual in Admin New page /admin/handleiding …
- 12:40 Changeset in Klonkt [bc83cc8]main by
- chore(editor): label "Excerpt" → "Samenvatting & Cirkel Preview" …
- 12:29 Changeset in Klonkt [bb82e7f]main by
- feat(stats): bot filter + clear labels (visitor-days ≠ unique …
- 09:01 Changeset in Klonkt [92bad27]main by
- revert(layout): remove scrollbar-gutter — caused a phantom dead …
- 08:59 Changeset in Klonkt [2e454455]main by
- fix(layout): scrollbar-gutter: stable — no content shift between pages …
- 08:55 Changeset in Klonkt [703ead3]main by
- fix(downloads): post width with higher specificity …
- 08:53 Changeset in Klonkt [210a9cb]main by
- fix(downloads): same post width as a real post .post-page (max-width …
- 08:45 Changeset in Klonkt [45d22b1]main by
- fix(posts): cover image shows in full (no crop) .post-cover img had …
- 08:39 Changeset in Klonkt [cc22112]main by
- fix(downloads): compact profile header (on-special) like on a post …
- 08:35 Changeset in Klonkt [d68bcf1]main by
- fix(downloads): post nav pixel-identical to a post …
- 08:29 Changeset in Klonkt [d8c6a83]main by
- fix(downloads+posts): post nav on downloads page + post images full …
- 08:21 Changeset in Klonkt [cf0de0c]main by
- fix(nav): syncAria also on pcmsNav + delayed retry (htmx race) …
- 08:19 Changeset in Klonkt [1c6d61c]main by
- fix(nav): Timeline/Grid active state via aria-selected (htmx-robust) …
- 08:11 Changeset in Klonkt [4dcefa1]main by
- fix(agenda): robust grey-on-calendar (htmx-proof) via source rule + …
- 08:04 Changeset in Klonkt [6eeb459]main by
- feat(agenda): rest grey on calendar/downloads + Agenda as standalone …
- 07:57 Changeset in Klonkt [1eff06a]main by
- refactor(nav): Agenda as its own pill (separate from Timeline/Grid) …
- 07:47 Changeset in Klonkt [da4387b]main by
- fix(nav): stale page class after htmx nav + Agenda-active white - …
- 07:41 Changeset in Klonkt [b200738]main by
- fix(downloads+agenda): downloads list gets header+pill; Solo/Circle …
- 07:35 Changeset in Klonkt [d219d56]main by
- fix(agenda): Timeline/Grid truly grey on the calendar page style.css …
- 07:33 Changeset in Klonkt [bad5c77]main by
- fix(agenda): on the calendar page only Agenda active, Timeline/Grid …
- 07:30 Changeset in Klonkt [0fcc09c]main by
- feat(agenda): full chrome + pill kept on the calendar page Removed …
- 07:28 Changeset in Klonkt [68b27a4]main by
- feat(agenda): Agenda opt-in — only shown when enabled + active on …
- 07:22 Changeset in Klonkt [d7b5a6c]main by
- feat(nav): Agenda IN the Timeline/Grid pill (Agenda · Timeline · Grid) …
- 07:06 Changeset in Klonkt [cf7c2d9]main by
- feat(nav): Agenda link in the view-switcher + "shows" → "events" Left …
- 07:01 Changeset in Klonkt [34b126b]main by
- chore: "Google login (listeners)" → "(visitors)" in the Admin headings …
- 07:00 Changeset in Klonkt [0c7e228]main by
- chore(admin): remove dashboard "Edit press kit" link (edit is now on …
- 06:59 Changeset in Klonkt [374fbe9]main by
- fix(epk): press kit bio respects line breaks (white-space: pre-line) …
- 06:56 Changeset in Klonkt [6c574b4]main by
- fix(epk): clear custom checkbox instead of unclear native one Native …
- 06:53 Changeset in Klonkt [d252ce8]main by
- fix(epk): clear track checkboxes (accent + checked row highlighted) …
- 06:49 Changeset in Klonkt [08cfdaa]main by
- feat(epk): admin-only "Edit" button on the press kit page itself On …
- 06:47 Changeset in Klonkt [e6ad948]main by
- feat(epk): choose up to 5 tracks for the press kit (instead of auto …
- 06:44 Changeset in Klonkt [57b1843]main by
- fix(epk): clean form styling on the press kit edit page The .set-* …
- 06:41 Changeset in Klonkt [9d9f3c1]main by
- feat(epk): press kit editable (bio + press contact) via Admin There …
- 06:36 Changeset in Klonkt [0f11c69]main by
- change(player): player bar only appears on first audio click The site …
- 05:45 Changeset in Klonkt [903f10b]main by
- fix(audio): larger cover thumbnail on link-only track (44→64px) …
- 05:43 Changeset in Klonkt [a66f691]main by
- fix(audio): link-only track shows cover (instead of music note) A …
- 05:37 Changeset in Klonkt [d727e92]main by
- feat(audio): tracks without audio (link-only) — list with open-in …
- 05:23 Changeset in Klonkt [183875b]main by
- feat(audio): per-track "open in" Spotify/YouTube/SoundCloud links New …
- 05:09 Changeset in Klonkt [459acd9]main by
- feat(editor): © insert button next to the credit field No more …
- 05:07 Changeset in Klonkt [3ec691c]main by
- chore(editor): credit placeholder = neutral example name instead of …
- 05:04 Changeset in Klonkt [0d7acdf]main by
- feat(audio): per-track owner/credit + license (+ written to mp3 ID3 …
- 04:46 Changeset in Klonkt [fef781e]main by
- revert: remove YouTube audio functionality (doesn't work) YouTube …
- 04:42 Changeset in Klonkt [8ab20b6]main by
- fix(player): muted start to work around YouTube autoplay block …
- 04:39 Changeset in Klonkt [8d43aa1]main by
- fix(player): prewarm hidden YT player (autoplay within gesture) The …
- 04:31 Changeset in Klonkt [e056e56]main by
- fix(player): YT album via queue expansion (reliable playback) …
- 04:28 Changeset in Klonkt [71e8fa5]main by
- fix(player): YT playlist now plays (listType:'playlist') …
- 04:22 Changeset in Klonkt [d43ea3f]main by
- feat(embed): YouTube playlist/album as audio on the site An …
- 04:08 Changeset in Klonkt [b56afa7]main by
- feat(embed): show real YouTube title on the audio-only card YT oEmbed …
- 04:03 Changeset in Klonkt [976d36d]main by
- fix(embed): bar-free square cover for YouTube audio hqdefault is 4:3 …
- 03:53 Changeset in Klonkt [9e6b54f]main by
- feat(player): YouTube audio via the site audio player (continuous play …
- 03:42 Changeset in Klonkt [73b41eb]main by
- feat(embed): YouTube audio-only option in posts Per embed you now …
- 03:20 Changeset in Klonkt [389aa99]main by
- fix(nav): no "bare content" on fast/repeated back-forward The …
- 03:14 Changeset in Klonkt [2fc9b7f]main by
- fix(circle): do not add hubs/non-circle sites as partner A hub does …
- 03:10 Changeset in Klonkt [7990e00]main by
- fix(nav): auth form pages via htmx → audio keeps playing Visiting …
- 03:04 Changeset in Klonkt [557a76f]main by
- feat(embed): volume slider + mute for YouTube & SoundCloud YT/SC use …
- 02:54 Changeset in Klonkt [2873b30]main by
- fix(embed): Spotify directly as bare iframe (instant, no API wait) …
- 02:52 Changeset in Klonkt [16b0c00]main by
- fix(embed): Spotify API via CSP whitelist + faster fallback Diagnosis …
- 02:37 Changeset in Klonkt [5f47671]main by
- fix: tablet opens full-player + clean search snippet - audio-player: …
- 02:33 Changeset in Klonkt [1720482]main by
- feat(search): tracks searchable + prefix-matching for posts - Posts: …
- 02:27 Changeset in Klonkt [1ee967d]main by
- fix(render): refresh viewer avatar + role from DB (stale session …
- 02:20 Changeset in Klonkt [795c925]main by
- fix(playlist): album/playlist cover falls back to first track cover …
- 02:17 Changeset in Klonkt [5258945]main by
- feat(player): persistent highlight on the active track The currently …
- 02:14 Changeset in Klonkt [ddf549f]main by
- fix(player): playlist queue now carries track id (scroll-to-track) …
- 02:09 Changeset in Klonkt [359b9ae]main by
- fix(player): scroll-to-track also from album & playlist Album track …
- 02:02 Changeset in Klonkt [85d5972]main by
- docs(changelog): WebP conversion, image friction, jump-to-track …
- 01:57 Changeset in Klonkt [8f6225c]main by
- feat(images): new uploads automatically converted to WebP Shared …
- 01:52 Changeset in Klonkt [fa08981]main by
- fix(player): scroll-to-track works for site-wide tracks too Site-wide …
- 01:38 Changeset in Klonkt [230e446]main by
- feat(player): mini-player jumps to post AND scrolls to the track …
- 01:32 Changeset in Klonkt [d188736]main by
- feat: images harder to save (right-click + drag blocked) Friction …
- 01:28 Changeset in Klonkt [1f0c85b]main by
- ui(grid): show source site on hover on circle feed tiles Grid tiles …
- 01:25 Changeset in Klonkt [dfc5379]main by
- feat(circle): immediately sync a new circle on add /add now runs …
- 01:24 Changeset in Klonkt [6d882b1]main by
- feat(account): email address editable Profile form gets an email …
- 01:20 Changeset in Klonkt [11ba289]main by
- fix(auth): Google login matches on linked google_sub first (not email) …
- 01:18 Changeset in Klonkt [36afccd]main by
- fix(auth): "Sign in with Google" text readable on hover The white …
- 01:16 Changeset in Klonkt [6fcd0cf]main by
- fix(account): "Link Google account" button text readable (white text) …
- 01:14 Changeset in Klonkt [3ca24f9]main by
- ui(admin-google): clearer redirect URI instruction Redirect URI shown …
- 01:09 Changeset in Klonkt [3fb8390]main by
- ui(auth): center subtitle text on login page Co-Authored-By: Claude …
- 01:06 Changeset in Klonkt [77b6fca]main by
- ui(auth): clickable "Administrator?" box on public login → /auth/admin …
06/19/2026:
- 22:57 Changeset in Klonkt [254872f]main by
- ui(editor): hide "drag image / select text" hint on touch Not …
- 22:56 Changeset in Klonkt [b988c96]main by
- fix(editor): Done button only in fullscreen (specificity) + larger …
- 22:52 Changeset in Klonkt [43fea32]main by
- ui(editor): larger "Done" button in fullscreen Co-Authored-By: Claude …
- 22:44 Changeset in Klonkt [9163b15]main by
- ui(editor): simple inline content layout on touch (toolbar hidden) …
- 22:37 Changeset in Klonkt [b12e20d]main by
- feat(editor): edit content as a fullscreen "page" with back button + …
- 13:13 Changeset in Klonkt [c1a4147]main by
- fix(editor): scroll lock removed — edit page could no longer scroll …
- 13:09 Changeset in Klonkt [a623e7e]main by
- ui(editor): tap-to-edit pill sticky at the bottom instead of centred …
- 12:55 Changeset in Klonkt [a4f6827]main by
- fix(editor): exit fullscreen scrolls to content top + clearer tap hint …
- 12:50 Changeset in Klonkt [61bb585]main by
- feat(editor): content not typeable inline on touch — editing = …
- 12:45 Changeset in Klonkt [5d68686]main by
- ui(mobile): hide scrollbars on touch (pointer:coarse) @media …
- 12:42 Changeset in Klonkt [de21a3b]main by
- fix(editor): no double scrollbar in fullscreen In fullscreen only the …
- 12:38 Changeset in Klonkt [e22230e]main by
- fix(editor): remove 350ms scroll guard + always type fullscreen on …
- 12:35 Changeset in Klonkt [f3f43df]main by
- ui: text fields grow with content instead of scrolling internally (no …
- 12:32 Changeset in Klonkt [c01f471]main by
- feat(editor): always type fullscreen on mobile/tablet (touch) On …
- 12:26 Changeset in Klonkt [9217e4e]main by
- fix(mobile): remove interactive-widget=resizes-content again It …
- 12:24 Changeset in Klonkt [7d81265]main by
- fix(editor): toolbar sticky inside the scroll box on mobile The frame …
- 12:20 Changeset in Klonkt [859bace0]main by
- fix(editor): mobile writing field as bounded box with internal scroll …
- 12:14 Changeset in Klonkt [2d596cf]main by
- fix(editor): catch async caret scroll on mobile Chrome (empty caret + …
- 12:09 Changeset in Klonkt [f8e8f9e]main by
- fix(editor): more robust anti-jump on formatting (Chrome) keepScroll …
- 12:06 Changeset in Klonkt [cbfbf88]main by
- fix(editor): no view jump on formatting button — hold scroll position …
- 12:02 Changeset in Klonkt [5f7dba2]main by
- fix(editor): action bar correctly above keyboard (no mid-screen bug) …
- 11:56 Changeset in Klonkt [408afc1]main by
- fix(editor): Save/Cancel bar above the keyboard on mobile The …
- 11:51 Changeset in Klonkt [4ad669a]main by
- ui(admin): label the Google button in Admin simply "Google" …
- 11:50 Changeset in Klonkt [9ef3c56]main by
- fix(mobile): hide fixed bottom bars when the keyboard is open …
- 11:45 Changeset in Klonkt [a0bff44]main by
- fix(editor): no autofocus on title on mobile (no keyboard popup) …
- 11:42 Changeset in Klonkt [06f3791]main by
- fix(editor): toolbar stays in view in fullscreen on mobile (visual …
- 11:38 Changeset in Klonkt [d2078f4]main by
- feat(editor): full-screen writing mode Button in the editor toolbar …
- 11:35 Changeset in Klonkt [16ce669]main by
- ui(editor): clear active/inactive state for formatting on mobile …
- 10:34 Changeset in Klonkt [a7e8e19]main by
- fix(editor): mobile — formatting buttons no longer steal focus (toggle …
- 10:08 Changeset in Klonkt [f83ccf3]main by
- ui(fan-gate): post-nav cascade-identiek aan de post (.container + …
- 10:03 Changeset in Klonkt [09ecc5f]main by
- ui(admin): Google login on its own Admin page - New page …
- 09:57 Changeset in Klonkt [f33b24a]main by
- ui(fan-gate): post-nav pixel-perfect match with the regular post The …
- 09:55 Changeset in Klonkt [247988e]main by
- feat(auth): admin can link Google and use it to log in - Account → …
- 09:49 Changeset in Klonkt [535f955]main by
- feat: post likes + favourites page for logged-in users - New …
- 09:40 Changeset in Klonkt [8cdb377]main by
- ui(post-nav): show 📌 when the Newer/Older post is pinned …
- 09:38 Changeset in Klonkt [1e2e9e7]main by
- ui(fan-gate): show Newer/Older post navigation on the fan gate too …
- 09:31 Changeset in Klonkt [f4b7b6a]main by
- feat(auth): public login = Google only; admin login hidden at …
- 09:21 Changeset in Klonkt [1080d14]main by
- ui(nav): scroll to top when navigating to a different post Links with …
- 09:16 Changeset in Klonkt [5c27e8e]main by
- ui(post): consistent Newer/Older navigation on every post When a …
- 09:09 Changeset in Klonkt [90259da]main by
- feat: release tracking — version in footer links to /changelog - …
- 08:49 Changeset in Klonkt [323abb0]main by
- ui(settings): mode config below Mode card + fix radio regression - …
- 08:41 Changeset in Klonkt [0804d61]main by
- ui: settings forms cleaner — stacked labels + full-width inputs Bare …
- 08:39 Changeset in Klonkt [a474bd2]main by
- ui: comment moderation "Recent decisions" as cards instead of a flat …
- 08:37 Changeset in Klonkt [da6fd02]main by
- newsletter: optional sign-up in the footer (toggle in Admin → …
- 08:34 Changeset in Klonkt [7eb35ae]main by
- editor: note that the excerpt is also the Circles summary …
- 08:29 Changeset in Klonkt [ca507ef]main by
- feat: SMTP configurable via Admin → Settings (app_settings, env …
- 08:25 Changeset in Klonkt [977f65d]main by
- ui: date/time picker in site theme (dark/light follows toggle) + …
- 08:20 Changeset in Klonkt [13b2986]main by
- EPK: Music section = top 10 most played (instead of first 6 in order) …
- 08:18 Changeset in Klonkt [59e522f]main by
- 404: unknown slug now falls through to the proper 404 page (instead of …
- 08:16 Changeset in Klonkt [3b6e04a]main by
- 404: proper, mobile-friendly page instead of bare text Catch-all now …
- 08:08 Changeset in Klonkt [2900f1d]main by
- fix: button text unreadable on hover (a:hover overrode accent button …
- 08:00 Changeset in Klonkt [b919a67]main by
- auth: all Google login errors as clear explanation blocks (codes …
- 07:57 Changeset in Klonkt [70679063]main by
- fix: download toggle without page reload + clear explanation page on …
- 07:28 Changeset in Klonkt [9b3e12c]main by
- fix: post URL now updates in the address bar — htmx:beforeRequest …
- 07:26 Changeset in Klonkt [e9cfa3c]main by
- fix: stats chart overflowed the card at 90 days 90 day columns + all …
- 07:23 Changeset in Klonkt [6b8afb1]main by
- fix: address bar not updating on post click (htmx history off + …
- 07:09 Changeset in Klonkt [0beafed]main by
- fix: site-wide audio player never received tracks (loadAudioTracks …
- 06:55 Changeset in Klonkt [84325b8]main by
- chrome: feature pages headerless (own header) — topnav stays, profile …
- 06:47 Changeset in Klonkt [8d32dcf]main by
- Show agenda + notify-me (premium feature #8) — last of the 8 - DB: …
- 04:28 Changeset in Klonkt [b9dc94c]main by
- Release scheduling + fan-only previews (premium feature #3) - DB: …
- 04:13 Changeset in Klonkt [6be57b4]main by
- Embeddable player (premium feature #7) Standalone /embed page (no …
- 04:07 Changeset in Klonkt [1794fac]main by
- Pro stats (premium feature #5): referrers + period selector + all-time …
- 03:46 Changeset in Klonkt [37edecd]main by
- Link-in-bio + click stats (premium feature #6) Linktree-style page …
- 01:09 Changeset in Klonkt [91094a4]main by
- Download-for-email (premium feature #2) Fan leaves their email -> …
- 00:00 Changeset in Klonkt [2e247e4]main by
- Newsletter / mailing list (premium feature #1) + SMTP wiring Email …
06/18/2026:
- 23:49 Changeset in Klonkt [255e3d3]main by
- EPK / press kit (premium feature #4): shareable /pers press page per …
- 16:37 Changeset in Klonkt [85d9fda]main by
- Fix double page on back/forward (htmx history conflict) On …
- 16:30 Changeset in Klonkt [b08b5bc]main by
- SW: intercept navigations only — fix broken images after refresh The …
- 16:28 Changeset in Klonkt [91d948c]main by
- Editor: blockquote button is now a real toggle (turning it off works) …
- 08:48 Changeset in Klonkt [fbc8628]main by
- Audio upload: WAV up to 100 MB (other formats remain 50 MB) WAV is …
- 08:02 Changeset in Klonkt [03af7f8]main by
- SEO page: own style block (label-per-row, clean fields) The …
- 07:50 Changeset in Klonkt [6623453]main by
- Admin: dedicated SEO page (/admin/seo) for advanced SEO The <head> …
- 07:24 Changeset in Klonkt [0dbb5c1]main by
- Mini player: clickable on desktop → navigates to the associated post …
- 06:57 Changeset in Klonkt [5c261b7]main by
- Circle feed: "je" → "mijn" + standalone "Add sites via Admin" sentence …
- 06:53 Changeset in Klonkt [8e29f77]main by
- Post: less blank space above the nav (.post-page margin-top 2rem → …
- 06:48 Changeset in Klonkt [74544fb]main by
- New sites: require login to comment on by default + post nav at top - …
- 06:44 Changeset in Klonkt [fee35fa]main by
- Hub settings: hero preview properly full-width (object-fit cover …
- 05:56 Changeset in Klonkt [86793f9]main by
- Hub: "give this user a Klonkt" from the users page In hub mode each …
- 05:54 Changeset in Klonkt [94a876f]main by
- Hub: removed dead host-based site resolving (slug == hostname could …
- 03:46 Changeset in Klonkt [f735304]main by
- Hub: /sites/:slug → 301 to canonical /user/:slug (single URL scheme) …
- 03:39 Changeset in Klonkt [586f9dd]main by
- docs: Build & Test section filled in (npm test = node:test, in-memory) …
- 03:38 Changeset in Klonkt [8398935]main by
- Tests: unit tests for the hub permissions layer (node:test, in-memory …
- 03:28 Changeset in Klonkt [7881080]main by
- Hub #3: explicit is_primary flag + shared getPrimarySite() (DRY) The …
- 03:19 Changeset in Klonkt [98ecf51]main by
- Hub #1+#2: site admin permissions work + assign owner to another user …
- 03:06 Changeset in Klonkt [6a2abb1]main by
- Fix: colour leaks on back button in hub (htmx history restore does not …
06/17/2026:
- 04:20 Changeset in Klonkt [c50f22e]main by
- Google login card: collapsible step-by-step setup guide Self-hosters …
- 04:02 Changeset in Klonkt [441f5d6]main by
- Login navigation via htmx (audio no longer jumps when opening login) …
- 03:52 Changeset in Klonkt [125e0e1]main by
- Fix: audio player floating on the auth/login screen (mobile) The auth …
- 03:48 Changeset in Klonkt [dbde7f8]main by
- Fix: theme toggle stops working after htmx navigation (stacked …
- 03:34 Changeset in Klonkt [93d6345]main by
- Theme scrollbar + install button in the footer row (no longer a …
- 02:07 Changeset in Klonkt [c3ad46d]main by
- Fix: horizontal clipping on html (not body) — no h-scroll + fixed …
- 02:00 Changeset in Klonkt [dd80030]main by
- Prutter inbox: also hide site footer (same as the chat) …
- 01:59 Changeset in Klonkt [d5b9d2a]main by
- Fix: bottom tab scrolls with the page on mobile (overflow-x …
- 01:52 Changeset in Klonkt [8f6a61d]main by
- Prutter composer: clear after send + Enter behaviour + auto-grow - …
- 01:39 Changeset in Klonkt [9611f31]main by
- Prutter chat: hide site footer (was showing through the fixed chat) …
- 01:28 Changeset in Klonkt [d3e2987]main by
- Post editor: Save bar above the audio player instead of below it The …
- 01:24 Changeset in Klonkt [2beef82]main by
- Post-editor: hide site tab bar in the editor (focus screen) On narrow …
- 01:18 Changeset in Klonkt [ca253750]main by
- Post-editor: action bar no longer floats on desktop …
- 01:14 Changeset in Klonkt [edc462d]main by
- Post-editor: default status Published (new posts) + friendlier pin …
- 01:10 Changeset in Klonkt [3068cc0]main by
- Slug field as URL: dimmed host prefix + slug in accent colour The …
- 01:03 Changeset in Klonkt [c2a9522]main by
- User-menu dropdown frosted blur now works: masthead backdrop-filter …
- 01:00 Changeset in Klonkt [d8693e4]main by
- User-menu dropdown: frosted-glass background (more transparent 66% + …
- 00:55 Changeset in Klonkt [dc4c067]main by
- View-switcher: pill centred between the two lines (equal space …
- 00:51 Changeset in Klonkt [1dca23b]main by
- View-switcher: margin-top back to 0.5rem (tight under the profile …
- 00:49 Changeset in Klonkt [a3e2f17]main by
- Fix: update per-site accent + palette on htmx navigation The accent …
- 00:46 Changeset in Klonkt [ee25d45]main by
- View-switcher: margin-top 1.5rem in shared-styles (the winning inline …
- 00:44 Changeset in Klonkt [6b0a8e2]main by
- View-switcher: symmetric space above/below the pill bar (margin-top …
- 00:34 Changeset in Klonkt [cbd1761]main by
- Hub-home: hero connects directly to the topnav (no gap) + dead hub-nav …
- 00:29 Changeset in Klonkt [79bba6e]main by
- Audio never jumps + hub topnav + Prutter chat mobile-first - Global …
- 00:12 Changeset in Klonkt [44cf44d]main by
- Audio: Admin/Account navigation via htmx (player stays alive, no …
- 00:03 Changeset in Klonkt [3cd1aaa]main by
- Hub: chrome in #pcms-chrome slot + out-of-band swap on htmx → header …
06/16/2026:
- 23:53 Changeset in Klonkt [108fd5f]main by
- CSS cache-buster style.css v2->v3 (session changes: hide hub header, …
- 23:35 Changeset in Klonkt [03bfdce]main by
- Hub: always render chrome + CSS toggle (body.on-hub) → hub nav via …
- 23:27 Changeset in Klonkt [09ac0a5]main by
- Hub audio: mobile Home back on htmx (persistent player survives → no …
- 22:56 Changeset in Klonkt [6224462]main by
- Hub: show bottom tab (Home/Search/Login) on the hub landing too The …
- 22:53 Changeset in Klonkt [9915786]main by
- Hub mobile: Home button goes to the hub root instead of the artist …
- 22:46 Changeset in Klonkt [e2a8e31]main by
- Login: Google button centred (display:flex, fills the login column …
- 22:28 Changeset in Klonkt [2248cd2]main by
- Google login configurable in-app: Admin → Settings card (no .env …
- 20:52 Changeset in Klonkt [221a209]main by
- Circle: carry over + display tags from the original post Publisher …
- 20:43 Changeset in Klonkt [fb02cc0]main by
- Circle: /media CORP=cross-origin so circle images load cross-origin …
- 19:02 Changeset in Klonkt [62b899d]main by
- Circle: strip shortcodes from summary + "Sync all now" button …
- 18:49 Changeset in Klonkt [682d504]main by
- Circle: remove cached posts on outdated + exclude outdated sites from …
- 18:46 Changeset in Klonkt [1be21ba]main by
- Account: owner can edit site name + tagline in account settings New …
- 18:45 Changeset in Klonkt [e9229f2]main by
- Phase 4: Fan login (Google) behind premium gate fanLoginReady() = …
- 10:30 Changeset in Klonkt [029f047]main by
- Phase 2: Hub mode behind premium gate (premiumUnlocked) Switching to …
- 09:41 Changeset in Klonkt [d549549]main by
- Statistics module (Phase 3): cookie-free tracking + premium stats page …
- 08:52 Changeset in Klonkt [3f893bf]main by
- Circle header: >5 sites = count only (pill), no chips; <=5 = chips …
- 08:22 Changeset in Klonkt [04a6b15]main by
- Circle header scalable: max 6 chips + "+N more" pill + total count …
- 07:35 Changeset in Klonkt [8ea3d0d]main by
- Defaults: new sites grid + moderate; Circle page graphical header (A) …
- 07:29 Changeset in Klonkt [1578f5d]main by
- Archive: also hide the grid-cols picker (archive has no grid) …
- 07:28 Changeset in Klonkt [c974223]main by
- Archive: always timeline list, ignores grid choice (fix: grid→archive …
- 07:25 Changeset in Klonkt [ec2e358]main by
- Archive: switcher click navigates back to the feed instead of toggling …
- 07:13 Changeset in Klonkt [d15b27f]main by
- Archive: Timeline/Grid greyed on archive + back button (+ English …
- 07:09 Changeset in Klonkt [544cd86]main by
- Appearance: full page translated to English (consistent with the rest …
- 07:04 Changeset in Klonkt [2c246d4]main by
- Appearance: remove dead profile_name/bio write + Prutter toggle only …
- 06:58 Changeset in Klonkt [8aa85d0]main by
- Prutter = premium Hub feature: Hub-only + behind premium gate Prutter …
- 06:47 Changeset in Klonkt [eef691e]main by
- Circle UI: Remove button readable (white text on solid red instead of …
- 06:46 Changeset in Klonkt [151a72c]main by
- Circle UI: reason on its own line + clean word wrapping; message …
- 06:43 Changeset in Klonkt [4fee228]main by
- Circle UI: show reason for outdated/unknown status instead of silent …
- 06:33 Changeset in Klonkt [f63cbc2]main by
- Circles: protocol version enforced via signature binding (update …
- 06:23 Changeset in Klonkt [1b4d5dd]main by
- Patreon premium gate (Phase 1): entitlement verification + Connect …
- 05:52 Changeset in Klonkt [a9e23f6]main by
- Circle: help text visibility clarified (participation, not a privacy …
- 04:29 Changeset in Klonkt [b807a85]main by
- Version bump: 1.0.0-alpha.1 -> 1.0.0-beta.1 (matches "Klonkt Beta") …
- 04:28 Changeset in Klonkt [83faa57]main by
- Rebrand: "Klonkt Hub Beta" -> "Klonkt Beta" + version number in footer …
- 04:25 Changeset in Klonkt [974de34]main by
- Style: site-edit dropdowns polished (custom chevron + focus instead of …
- 04:23 Changeset in Klonkt [bdc3c1e]main by
- Always guarantee a primary site (solo/hub/circle) via …
- 04:16 Changeset in Klonkt [a742e9f]main by
- Fix: top-nav profile menu shows 'God' for the god role instead of …
- 04:05 Changeset in Klonkt [5f43245]main by
- Fix: fresh install crashes on first boot (sessions table doesn't exist …
- 03:38 Changeset in Klonkt [00d54bc]main by
- Fix: htmx-partial 500 on non-ASCII characters in post title The …
- 03:17 Changeset in Klonkt [baa2e59]main by
- Branding: last prutfolio remnants (render comment + package-lock name) …
- 03:16 Changeset in Klonkt [7007d4c]main by
- Branding: PWA id + npm package name prutfolio -> klonkt PWA id-base …
- 03:10 Changeset in Klonkt [8453812]main by
- Branding: 100% PrutCMS/PrutFolio-free — Klonkt as original product …
- 03:02 Changeset in Klonkt [5019e22]main by
- Branding: user-facing PrutCMS -> Klonkt (welcome heading, site-title …
- 03:00 Changeset in Klonkt [9465a0d]main by
- Rename pm2 process prutcms -> klonkt (drop legacy name) …
- 02:51 Changeset in Klonkt [ff08153]main by
- Update feature: Admin -> Updates (git-based v1, per instance) Admin …
- 02:22 Changeset in Klonkt [7917407]main by
- Circles: local read page /cirkel/:id (stay on your site) + source in …
- 02:17 Changeset in Klonkt [b960185]main by
- shell: cache-buster on style.css (?v=2) — CSS changes load without …
- 02:16 Changeset in Klonkt [64b90c0]main by
- Circles: Solo/Circle as segmented switcher (specificity fix) + …
- 02:14 Changeset in Klonkt [d2c43f9]main by
- Circles: scope toggle centered instead of left-aligned …
- 01:56 Changeset in Klonkt [9f81a09]main by
- Circles: Solo/Circle scope toggle in the switcher bar (left) + Circle …
- 01:52 Changeset in Klonkt [43dbf9c]main by
- Circles: /cirkel uses the home view (timeline + grid + switcher) - …
- 01:47 Changeset in Klonkt [aa7f548]main by
- Circles: more neutral /cirkel subheading (no my/your) Co-Authored-By: …
- 01:44 Changeset in Klonkt [6e9a95b]main by
- Circles: Circle admin button on the Admin page (circle mode) …
- 01:40 Changeset in Klonkt [0908b8f]main by
- Circles: Circle nav link (desktop + mobile) when tenancy=circle …
- 01:15 Changeset in Klonkt [57929aa]main by
- Circles: lazy prepares in CircleService (fix crash on boot) The …
- 01:12 Changeset in Klonkt [0b7ebbf]main by
- Merge branch 'feat/cirkels-v1' # Conflicts: # src/routes/admin-settings.js
- 01:08 Changeset in Klonkt [63edb0d]main by
- hub: hero image upload + dark overlay slider Reconcile of live edits …
- 01:03 Changeset in Klonkt [efdde37]main by
- Circles v1 — publication disabled in hub mode (solo-to-solo only) …
- 00:59 Changeset in Klonkt [0091cb7]main by
- Circles v1 — steps 4+5: Admin UI + /cirkel feed - Mode 'Circles' in …
- 00:52 Changeset in Klonkt [25d4041]main by
- Circles v1 — step 3: pull side (CircleService.sync) - …
- 00:38 Changeset in Klonkt [b300682]main by
- Circles v1 — foundation: migration + signed own publication Steps 1+2 …
06/15/2026:
- 04:21 Changeset in Klonkt [af5407f]main by
- fix: view-switcher on post — active colour removed, buttons still …
- 04:10 Changeset in Klonkt [11a6871]main by
- style: grey out view-switcher on a standalone post Timeline/Grid + …
- 04:02 Changeset in Klonkt [6117035]main by
- fix: post navigation over ALL posts incl. pinned (no more pinned-only …
- 03:56 Changeset in Klonkt [33886fb]main by
- fix: site player now also pauses fallback embeds (mutual exclusion …
- 03:44 Changeset in Klonkt [1f01b99]main by
- style: post navigation — Newer on the left, Older on the right …
- 03:39 Changeset in Klonkt [52badd3]main by
- style: Spotify box — inner area back to theme colour (white border …
- 03:39 Changeset in Klonkt [d54dade]main by
- fix: hub mode — related posts + Newer/Older across ALL users In hub …
- 03:27 Changeset in Klonkt [7f46817d]main by
- style: Spotify embed in a white rounded box (border + shadow) Spotify …
- 03:23 Changeset in Klonkt [3e86f1c]main by
- feat: automatic track duration — no more manually entering seconds …
- 03:23 Changeset in Klonkt [4c9f29a]main by
- feat: on-brand media embeds via the real player APIs Replaces bare …
- 02:02 Changeset in Klonkt [650b601]main by
- feat: embed pause applies to every embed (not just .folio-embed) …
- 01:51 Changeset in Klonkt [d352b63]main by
- feat: site player pauses when an embedded video/audio starts playing …
- 01:48 Changeset in Klonkt [1907a18]main by
- feat: embed media via editor button ([[embed:url]] shortcode) Embed …
- 01:37 Changeset in Klonkt [851239c]main by
- fix: topnav home button (home icon) + post-edit save/cancel with …
- 01:29 Changeset in Klonkt [e6888ca]main by
- feat: audio player persists + resumes across page navigations (session …
- 01:18 Changeset in Klonkt [bd7f10d]main by
- fix: playlist cover upload now works on create too (not only edit) …
- 01:14 Changeset in Klonkt [f45fc82]main by
- feat: posts/drafts list on the dashboard — drafts findable again …
- 01:06 Changeset in Klonkt [b50a885]main by
- fix: cover URL field accepts relative /media/ paths (type=url -> text) …
06/14/2026:
- 23:26 Changeset in Klonkt [cb6b1ad]main by
- fix: tablet full-player queue gets full width (660px instead of …
- 23:21 Changeset in Klonkt [67d4067]main by
- fix: tablet full-player uses 'safe center' — cover no longer clipped …
- 23:12 Changeset in Klonkt [102d2f0]main by
- fix: tablet/auto full-player overrides now win (cascade order) + cover …
- 22:17 Changeset in Klonkt [ddecd9a]main by
- feat: audio player three layouts — desktop mini-only, tablet/auto …
- 18:55 Changeset in Klonkt [a1c8cb8]main by
- feat: directory URL /artiesten -> /leden + count 'N Klonkt's' - Route …
- 18:48 Changeset in Klonkt [74c2473]main by
- copy: hub-home/directory 'Artiesten' -> 'Leden' + feed heading 'our …
- 18:46 Changeset in Klonkt [ce8c8c2]main by
- feat: hub-home shows main/label account separately (not under Artists) …
- 18:35 Changeset in Klonkt [a3169f5]main by
- fix: viewer now sees the Admin link too (canSeeBeheer) The Admin link …
- 18:23 Changeset in Klonkt [5e95aac]main by
- fix: users list alignment + site icon SF -> K (Klonkt) - admin-users: …
- 18:16 Changeset in Klonkt [c869272]main by
- fix: allow inline event handlers (CSP) — avatar upload + role dropdown …
- 18:07 Changeset in Klonkt [8afbdd6]main by
- feat: viewer role + artists directory + Klonkt Hub Beta rebrand …
- 17:25 Changeset in Klonkt [b94c08e]main by
- fix: all site-scoped links use siteUrlBase in hub mode Follow-up on …
- 17:13 Changeset in Klonkt [7963a6e]main by
- fix: feed post links use siteUrlBase (clicking did not work in hub) …
- 17:10 Changeset in Klonkt [0c2228a]main by
- hub: home button actually visible + delete for every user (cascade) - …
- 17:04 Changeset in Klonkt [05a6ca0]main by
- admin: align users list — fixed position for the delete button The …
- 17:01 Changeset in Klonkt [3c196f9]main by
- fix: view switcher on non-feed pages goes to the SITE home, not global …
- 16:59 Changeset in Klonkt [42081fb]main by
- hub: home button on user sites — masthead brand becomes the hub name …
- 16:55 Changeset in Klonkt [6150acb]main by
- account: cleaner profile card — clickable avatar with camera badge …
- 16:49 Changeset in Klonkt [ab544fd]main by
- fix: PrutFolio header + roster show the SITE OWNER's photo, not the …
- 16:28 Changeset in Klonkt [a64f642]main by
- admin: read-only ("View mode") configurable per user in Admin -> Users …
- 16:25 Changeset in Klonkt [640b39c]main by
- auth: read-only view accounts (view everything, modify nothing) New …
- 16:17 Changeset in Klonkt [8cb1dc7]main by
- hub: artist self-management — owner manages their own subsite …
- 16:02 Changeset in Klonkt [ccbd6a6]main by
- hub: global pages (e.g. /account) bare; PrutFolio chrome only on …
- 15:48 Changeset in Klonkt [a7e12de]main by
- auth: no shell chrome on login/register/reset (headerless focus …
- 15:42 Changeset in Klonkt [337ec5a]main by
- hub: minimal auth nav over the hero on the overview (login back) The …
- 15:37 Changeset in Klonkt [4c5169f]main by
- hub: overview is a headerless landing with hero image The hub …
- 15:21 Changeset in Klonkt [6e0249f]main by
- hub: generic home page (not owned by any user) + admin-managed …
- 15:15 Changeset in Klonkt [743bb81]main by
- hub: fix /user/:slug showed the overview instead of the site + heading …
- 15:09 Changeset in Klonkt [4d7443b]main by
- hub: home page redesigned as a label landing page Separate landing …
- 14:59 Changeset in Klonkt [bf61be7]main by
- hub: company overview on / (latest posts from all users) + /user/ …
- 14:53 Changeset in Klonkt [52215bc]main by
- tenancy: /gebruikers -> /user/ in settings text + comments (Robin's …
- 08:33 Changeset in Klonkt [2cc887b]main by
- tenancy: Prutter in hub only; Account tile removed from admin; tenancy …
- 08:29 Changeset in Klonkt [8b014ef]main by
- admin: one consistent "← Admin" back button on all admin pages There …
- 08:21 Changeset in Klonkt [07775b7]main by
- tenancy: Appearance page back link is mode-aware (solo -> Admin …
- 08:18 Changeset in Klonkt [6351545]main by
- tenancy: runtime Solo/Hub mode + mode-aware /admin (Phase 1) Admin …
- 07:31 Changeset in Klonkt [9e27d64]main by
- auth: password admin + per-instance Google for listeners (no broker) …
- 06:55 Changeset in Klonkt [32cc601]main by
- auth: route Google login via central Klonkt broker (no credentials per …
- 06:32 Changeset in Klonkt [ae924a2]main by
- auth: update startup banner (Google login instead of register) …
- 04:39 Changeset in Klonkt [c80e78b]main by
- auth: replace username/password with Google login Listeners (and the …
- 04:20 Changeset in Klonkt [89d6536]main by
- fix: track buttons via event delegation (survives HTMX history-restore …
- 04:07 Changeset in Klonkt [2b52bfb]main by
- audio: mobile — back button closes the now-playing sheet (history …
- 04:01 Changeset in Klonkt [942028f]main by
- app: remove APK/TWA variant — PWA-only install Robin: only PWA …
- 02:40 Changeset in Klonkt [9b36f45]main by
- audio: mobile — tapping a track automatically opens the now-playing …
- 01:25 Changeset in Klonkt [b5bae24]main by
- reconcile: commit uncommitted live /srv state (playback fix + …
06/13/2026:
- 16:55 WikiStart edited by
- Reverted to version 3. Je vragen beantwoorden! (diff)
- 16:55 WikiStart edited by
- Nutteloze vragen weg, of! (diff)
06/11/2026:
- 00:08 Changeset in Klonkt [c88783e]main by
- fix: rate limiter crash behind Cloudflare/Caddy (req.ip with port) …
Note:
See TracTimeline
for information about the timeline view.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)