# # ChangeLog for src/views/pages/admin.ejs in Klonkt # # Generated by Trac 1.6 # 09/09/2026 04:34:47 PM Fri, 26 Jun 2026 09:20:12 GMT Robin Genis [8ef8c3e] * scripts/migrate-circles.mjs (added) * src/middleware/render.js (modified) * src/routes/admin-circle.js (deleted) * src/routes/changelog.js (modified) * src/routes/circle.js (modified) * src/routes/federation.js (deleted) * src/server.js (modified) * src/services/CircleFederation.js (deleted) * src/services/CircleService.js (deleted) * src/services/SettingsService.js (modified) * src/views/pages/admin-circle.ejs (deleted) * src/views/pages/admin-settings.ejs (modified) * src/views/pages/admin.ejs (modified) * src/views/pages/changelog.ejs (modified) * src/views/pages/circle-post.ejs (deleted) feat(cirkel): remove the old Cirkels pull-protocol; Cirkels is now ... 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:04:45 GMT Robin Genis [33c1999] * src/services/i18n.js (modified) * src/views/pages/admin.ejs (modified) fix(admin): shorter label for the fediverse Beheer button (was ... Thu, 25 Jun 2026 21:41:40 GMT Robin Genis [820bceb] * src/views/pages/admin.ejs (modified) feat(admin): add a fediverse (my replies) link to the Beheer ... 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 15:27:49 GMT Robin Genis [00f669b] * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/services/i18n.js (modified) * src/views/pages/admin.ejs (modified) * src/views/pages/fedi-notifications.ejs (added) feat(fediverse-client): notifications inbox (/meldingen) Aggregates ... Wed, 24 Jun 2026 15:19:11 GMT Robin Genis [914eb9f] * src/config/database.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/timeline.ejs (added) feat(fediverse-client): follow accounts + home timeline Klonkt can ... Wed, 24 Jun 2026 14:26:32 GMT Robin Genis [59f0170] * src/routes/admin-comments.js (deleted) * src/routes/comments.js (deleted) * src/routes/posts.js (modified) * src/server.js (modified) * src/views/pages/admin-comments.ejs (deleted) * src/views/pages/admin-site-edit.ejs (modified) * src/views/pages/admin.ejs (modified) * src/views/pages/my-site.ejs (modified) * src/views/pages/post.ejs (modified) refactor(comments): remove native comments — social is fediverse-only ... Wed, 24 Jun 2026 14:16:57 GMT Robin Genis [075185a] * src/config/google.js (deleted) * src/routes/account.js (modified) * src/routes/admin-settings.js (modified) * src/routes/auth.js (modified) * src/views/pages/account.ejs (modified) * src/views/pages/admin-google.ejs (deleted) * src/views/pages/admin-settings.ejs (modified) * src/views/pages/admin.ejs (modified) * src/views/pages/auth-login.ejs (modified) refactor(auth): remove Google login (listeners now interact via the ... Tue, 23 Jun 2026 16:57:50 GMT Robin Genis [475eeda] * src/services/i18n.js (modified) * src/views/pages/admin.ejs (modified) feat: premium status badge on the admin dashboard Below the title, ... 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 ... 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:50:48 GMT roboburr [91c0a39] * src/services/i18n.js (modified) * src/views/pages/admin.ejs (modified) * src/views/pages/downloads.ejs (modified) * src/views/pages/shows.ejs (modified) feat(i18n phase 2): admin dashboard + public calendar/downloads ... Sat, 20 Jun 2026 12:51:42 GMT roboburr [d0f4c10] * src/routes/admin.js (modified) * src/views/pages/admin-help.ejs (added) * src/views/pages/admin.ejs (modified) feat(admin): searchable Manual in Admin New page /admin/handleiding ... Sat, 20 Jun 2026 07:00:03 GMT roboburr [0c7e228] * src/views/pages/admin.ejs (modified) chore(admin): remove dashboard "Edit press kit" link (edit is now on ... Sat, 20 Jun 2026 06:41:56 GMT roboburr [9d9f3c1] * src/routes/admin-epk.js (added) * src/server.js (modified) * src/views/pages/admin-epk.ejs (added) * src/views/pages/admin.ejs (modified) feat(epk): press kit editable (bio + press contact) via Admin There ... Fri, 19 Jun 2026 11:51:57 GMT roboburr [4ad669a] * src/views/pages/admin.ejs (modified) ui(admin): label the Google button in Admin simply "Google" ... Fri, 19 Jun 2026 10:03:52 GMT roboburr [09ecc5f] * src/routes/admin-settings.js (modified) * src/views/pages/admin-google.ejs (added) * src/views/pages/admin-settings.ejs (modified) * src/views/pages/admin.ejs (modified) ui(admin): Google login on its own Admin page - New page ... Fri, 19 Jun 2026 06:47:40 GMT roboburr [8d32dcf] * src/config/database.js (modified) * src/routes/admin-shows.js (added) * src/routes/shows.js (added) * src/server.js (modified) * src/services/SubscriberService.js (modified) * src/views/pages/admin-shows.ejs (added) * src/views/pages/admin.ejs (modified) * src/views/pages/shows.ejs (added) Show agenda + notify-me (premium feature #8) — last of the 8 - DB: ... Fri, 19 Jun 2026 03:46:42 GMT roboburr [37edecd] * src/config/database.js (modified) * src/routes/admin-stats.js (modified) * src/routes/linkbio.js (added) * src/server.js (modified) * src/views/pages/admin-stats.ejs (modified) * src/views/pages/admin.ejs (modified) * src/views/pages/linkbio.ejs (added) Link-in-bio + click stats (premium feature #6) Linktree-style page ... Fri, 19 Jun 2026 01:09:15 GMT roboburr [91094a4] * src/config/database.js (modified) * src/routes/admin-audio.js (modified) * src/routes/download.js (added) * src/server.js (modified) * src/views/pages/admin-audio.ejs (modified) * src/views/pages/admin.ejs (modified) * src/views/pages/download.ejs (added) * src/views/pages/downloads.ejs (added) Download-for-email (premium feature #2) Fan leaves their email -> ... Fri, 19 Jun 2026 00:00:48 GMT roboburr [2e247e4] * src/config/database.js (modified) * src/routes/admin-newsletter.js (added) * src/routes/newsletter.js (added) * src/server.js (modified) * src/services/SubscriberService.js (added) * src/views/pages/admin-newsletter.ejs (added) * src/views/pages/admin.ejs (modified) * src/views/pages/newsletter.ejs (added) Newsletter / mailing list (premium feature #1) + SMTP wiring Email ... Thu, 18 Jun 2026 07:50:13 GMT roboburr [6623453] * src/routes/admin-seo.js (added) * src/routes/admin-sites.js (modified) * src/server.js (modified) * src/views/pages/admin-seo.ejs (added) * src/views/pages/admin-site-edit.ejs (modified) * src/views/pages/admin.ejs (modified) Admin: dedicated SEO page (/admin/seo) for advanced SEO The ... Tue, 16 Jun 2026 09:41:28 GMT roboburr [d549549] * src/config/database.js (modified) * src/routes/admin-stats.js (added) * src/routes/audio.js (modified) * src/routes/posts.js (modified) * src/server.js (modified) * src/services/StatsService.js (added) * src/views/pages/admin-stats.ejs (added) * src/views/pages/admin.ejs (modified) Statistics module (Phase 3): cookie-free tracking + premium stats ... Tue, 16 Jun 2026 04:23:01 GMT roboburr [bdc3c1e] * src/server.js (modified) * src/services/ensurePrimarySite.js (added) * src/views/pages/admin.ejs (modified) Always guarantee a primary site (solo/hub/circle) via ... Tue, 16 Jun 2026 02:51:47 GMT roboburr [ff08153] * src/routes/admin-updates.js (added) * src/server.js (modified) * src/views/pages/admin-updates.ejs (added) * src/views/pages/admin.ejs (modified) Update feature: Admin -> Updates (git-based v1, per instance) Admin ... Tue, 16 Jun 2026 01:44:43 GMT roboburr [6e9a95b] * src/views/pages/admin.ejs (modified) Circles: Circle admin button on the Admin page (circle mode) ... Mon, 15 Jun 2026 01:14:02 GMT roboburr [f45fc82] * src/routes/admin.js (modified) * src/views/pages/admin.ejs (modified) * src/views/pages/my-site.ejs (modified) feat: posts/drafts list on the dashboard — drafts findable again ... 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 08:33:10 GMT roboburr [2cc887b] * src/middleware/render.js (modified) * src/views/pages/admin.ejs (modified) * src/views/partials/bottom-tab.ejs (modified) * src/views/partials/topnav.ejs (modified) tenancy: Prutter in hub only; Account tile removed from admin; ... Sun, 14 Jun 2026 08:18:50 GMT roboburr [6351545] * src/config/database.js (modified) * src/middleware/site.js (modified) * src/routes/admin-settings.js (added) * src/routes/admin.js (modified) * src/server.js (modified) * src/services/SettingsService.js (added) * src/views/pages/admin-settings.ejs (added) * src/views/pages/admin.ejs (modified) tenancy: runtime Solo/Hub mode + mode-aware /admin (Phase 1) Admin ... Wed, 06 May 2026 22:18:18 GMT Robin [7bc636b] * .env.example (added) * .gitignore (added) * README.md (added) * ecosystem.config.cjs (added) * package-lock.json (added) * package.json (added) * src/assets/.well-known/assetlinks.json (added) * src/assets/apk/soundfabrics.apk (added) * src/assets/css/audio.css (added) * src/assets/css/style.css (added) * src/assets/fonts/fraunces-latin-full-italic.woff2 (added) * src/assets/fonts/fraunces-latin-full-normal.woff2 (added) * src/assets/fonts/literata-latin-opsz-italic.woff2 (added) * src/assets/fonts/literata-latin-opsz-normal.woff2 (added) * src/assets/fonts/plus-jakarta-sans-latin-wght-italic.woff2 (added) * src/assets/fonts/plus-jakarta-sans-latin-wght-normal.woff2 (added) * src/assets/js/audio-player.js (added) * src/assets/js/htmx.min.js (added) * src/assets/js/install-app.js (added) * src/config/database.js (added) * src/db/migrate.js (added) * src/db/migrations/001-init.sql (added) * src/middleware/auth.js (added) * src/middleware/rate-limit.js (added) * src/middleware/render.js (added) * src/middleware/site.js (added) * src/routes/account.js (added) * src/routes/admin-audio.js (added) * src/routes/admin-comments.js (added) * src/routes/admin-playlists.js (added) * src/routes/admin-sites.js (added) * src/routes/admin-users.js (added) * src/routes/admin.js (added) * src/routes/audio.js (added) * src/routes/auth.js (added) * src/routes/comments.js (added) * src/routes/feed.js (added) * src/routes/posts.js (added) * src/routes/prutter.js (added) * src/routes/search.js (added) * src/routes/tags.js (added) * src/routes/types.js (added) * src/routes/users.js (added) * src/server.js (added) * src/services/AudioEmbedService.js (added) * src/services/AudioStreamService.js (added) * src/services/AudioTranscoder.js (added) * src/services/CRDTService.js (added) * src/services/HtmlSanitizerService.js (added) * src/services/MarkdownService.js (added) * src/services/PermissionsService.js (added) * src/services/PlatformIcons.js (added) * src/services/PlaylistService.js (added) * src/services/PrutterService.js (added) * src/services/SqliteSessionStore.js (added) * src/services/ThemeService.js (added) * src/views/pages/account.ejs (added) * src/views/pages/admin-audio.ejs (added) * src/views/pages/admin-comments.ejs (added) * src/views/pages/admin-playlists.ejs (added) * src/views/pages/admin-site-edit.ejs (added) * src/views/pages/admin-sites.ejs (added) * src/views/pages/admin-users.ejs (added) * src/views/pages/admin.ejs (added) * src/views/pages/archive.ejs (added) * src/views/pages/auth-login.ejs (added) * src/views/pages/auth-register.ejs (added) * src/views/pages/auth-reset-request.ejs (added) * src/views/pages/auth-reset.ejs (added) * src/views/pages/home.ejs (added) * src/views/pages/post-edit.ejs (added) * src/views/pages/post.ejs (added) * src/views/pages/prutter-conversation.ejs (added) * src/views/pages/prutter-inbox.ejs (added) * src/views/pages/search.ejs (added) * src/views/pages/tag.ejs (added) * src/views/pages/type.ejs (added) * src/views/pages/user.ejs (added) * src/views/pages/welcome.ejs (added) * src/views/partials/bottom-tab.ejs (added) * src/views/partials/footer.ejs (added) * src/views/partials/playlist-editor.ejs (added) * src/views/partials/post-card.ejs (added) * src/views/partials/post-tile.ejs (added) * src/views/partials/profile-header.ejs (added) * src/views/partials/profile-sheet.ejs (added) * src/views/partials/shared-styles.ejs (added) * src/views/partials/topnav.ejs (added) * src/views/partials/track-editor.ejs (added) * src/views/partials/view-switcher.ejs (added) * src/views/shell.ejs (added) Initial commit — PrutFolio v1 source (pulled from Hetzner /srv/prutfolio)