# # ChangeLog for src/server.js in Klonkt # # Generated by Trac 1.6 # 09/09/2026 01:51:15 PM Sun, 14 Jun 2026 18:55:44 GMT roboburr [a1c8cb8] * src/routes/admin-sites.js (modified) * src/routes/artists.js (modified) * src/routes/hub.js (modified) * src/routes/posts.js (modified) * src/server.js (modified) * src/views/pages/artists-directory.ejs (modified) * src/views/pages/hub-home.ejs (modified) feat: directory URL /artiesten -> /leden + count 'N Klonkt's' - ... Sun, 14 Jun 2026 18:23:48 GMT roboburr [5e95aac] * src/server.js (modified) * src/views/pages/admin-users.ejs (modified) fix: users list alignment + site icon SF -> K (Klonkt) - ... Sun, 14 Jun 2026 18:16:58 GMT roboburr [c869272] * src/server.js (modified) fix: allow inline event handlers (CSP) — avatar upload + role ... 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 16:25:27 GMT roboburr [640b39c] * src/config/database.js (modified) * src/routes/auth.js (modified) * src/server.js (modified) * src/views/shell.ejs (modified) auth: read-only view accounts (view everything, modify nothing) New ... Sun, 14 Jun 2026 14:59:41 GMT roboburr [bf61be7] * src/middleware/site.js (modified) * src/routes/hub.js (added) * src/server.js (modified) * src/views/pages/hub-home.ejs (added) hub: company overview on / (latest posts from all users) + /user/ ... 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 ... Sun, 14 Jun 2026 07:31:23 GMT roboburr [9e27d64] * .env.example (modified) * package-lock.json (modified) * package.json (modified) * scripts/reset-admin.mjs (added) * src/config/google.js (modified) * src/config/mailer.js (added) * src/routes/account.js (modified) * src/routes/auth.js (modified) * src/server.js (modified) * src/views/pages/account.ejs (modified) * src/views/pages/auth-login.ejs (modified) * src/views/pages/auth-register.ejs (modified) * src/views/pages/auth-reset-request.ejs (modified) * src/views/pages/auth-reset.ejs (modified) * src/views/pages/welcome.ejs (modified) * src/views/partials/shared-styles.ejs (modified) auth: password admin + per-instance Google for listeners (no broker) ... Sun, 14 Jun 2026 06:32:57 GMT roboburr [ae924a2] * src/server.js (modified) auth: update startup banner (Google login instead of register) ... Sun, 14 Jun 2026 04:01:38 GMT roboburr [942028f] * src/assets/.well-known/assetlinks.json (deleted) * src/assets/apk/soundfabrics.apk (deleted) * src/assets/js/install-app.js (modified) * src/server.js (modified) * src/views/partials/footer.ejs (modified) * src/views/shell.ejs (modified) app: remove APK/TWA variant — PWA-only install Robin: only PWA ... Sun, 14 Jun 2026 01:25:19 GMT Robin Genis [b5bae24] * .well-known/assetlinks.json (added) * deploy/DEPLOY.md (added) * deploy/backup.sh (added) * deploy/nginx.conf.example (added) * deploy/verify.ps1 (added) * scripts/import-v9-posts.js (added) * scripts/migrate-posts-to-html.js (added) * scripts/v9-posts-import.sql (added) * src/assets/js/audio-player.js (modified) * src/assets/js/lenis.min.js (added) * src/assets/js/smooth-scroll.js (added) * src/server.js (modified) * src/views/shell.ejs (modified) reconcile: commit uncommitted live /srv state (playback fix + ... Wed, 20 May 2026 22:19:03 GMT Robin Genis [353c39c] * src/server.js (modified) audio: allow blob: in CSP media-src (fix Step-1 no-play/auto-skip ... 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)