| 1 | # Changelog — Klonkt
|
|---|
| 2 |
|
|---|
| 3 | All notable changes to Klonkt. Newest at the top.
|
|---|
| 4 | Versions follow [SemVer](https://semver.org/).
|
|---|
| 5 |
|
|---|
| 6 | ## [Unreleased]
|
|---|
| 7 |
|
|---|
| 8 | ### Added
|
|---|
| 9 | - **App access via OAuth 2.0 (ActivityPub Client-to-Server, phase 1).** Klonkt
|
|---|
| 10 | now speaks the standard AP C2S auth handshake so native and web clients (the
|
|---|
| 11 | Shaer apps first) can connect: dynamic client registration (RFC 7591), a
|
|---|
| 12 | PKCE authorization-code flow with a consent screen that picks which of your
|
|---|
| 13 | sites the app may post as, and bearer tokens (stored hashed, single-use
|
|---|
| 14 | codes). The actor document advertises the OAuth and uploadMedia endpoints and
|
|---|
| 15 | `/.well-known/oauth-authorization-server` (RFC 8414) exposes the metadata, so
|
|---|
| 16 | clients discover everything instead of hardcoding paths. Public clients + PKCE
|
|---|
| 17 | only, no client secrets.
|
|---|
| 18 | - **The outbox accepts posts from apps (C2S, phase 1 complete).** A
|
|---|
| 19 | bearer-authenticated `POST` to `/ap/users/:slug/outbox` now drives your account
|
|---|
| 20 | from a client: publish a note, reply, like, boost, follow, and undo any of
|
|---|
| 21 | those. Activities are translated onto the same delivery machinery the web UI
|
|---|
| 22 | uses; a bare Note is wrapped in a Create per the spec; content is sanitized;
|
|---|
| 23 | the token is scoped to one site so it can't post as another. Note: this is
|
|---|
| 24 | ActivityPub C2S, which the Shaer apps speak. Mastodon clients (Ivory etc.) use
|
|---|
| 25 | Mastodon's own API and are not supported by this.
|
|---|
| 26 |
|
|---|
| 27 | ### Fixed
|
|---|
| 28 | - **OAuth consent now hands off reliably to native apps.** After Allow/Deny, a
|
|---|
| 29 | redirect to a native custom scheme (e.g. `com.klonkt.shaer:/oauth`) was a plain
|
|---|
| 30 | 302, which mobile browsers silently drop. The consent step now serves a tiny
|
|---|
| 31 | interstitial for non-http redirect URIs that auto-forwards and offers an "Open
|
|---|
| 32 | the app" tap link (a tap reliably launches the app on Android; iOS's web-auth
|
|---|
| 33 | session intercepts either way). Web (http/https) clients still get a 302.
|
|---|
| 34 | - **Visitors can reply to the site owner's own comments.** The "reply via the
|
|---|
| 35 | fediverse" button only appeared on comments from others; the site's own
|
|---|
| 36 | comments in a thread offered visitors nothing, so you could not respond to
|
|---|
| 37 | the author from your own instance.
|
|---|
| 38 |
|
|---|
| 39 | ## [1.5.0] · 2026-07-18
|
|---|
| 40 |
|
|---|
| 41 | ### Added
|
|---|
| 42 | - **Messages: your replies and notifications on one page.** A single Messages
|
|---|
| 43 | tab replaces Replies and Notifications. One stream with filter chips (All,
|
|---|
| 44 | Conversations, Activity, Sent): your own sent replies join the conversation
|
|---|
| 45 | (with edit and delete), likes and boosts on the same post group into one line,
|
|---|
| 46 | private replies carry a lock badge, and items new since your last visit get a
|
|---|
| 47 | dot. The interact bookmarklet moved along. Old /fediverse and /notifications
|
|---|
| 48 | links redirect to /messages.
|
|---|
| 49 | - **Connect: your following and followers on one page.** A single Connect tab
|
|---|
| 50 | replaces the separate Following and Followers pages, showing each connection's
|
|---|
| 51 | direction (following →, follower ←, mutual ↔) and, for accounts you deliver to,
|
|---|
| 52 | when they were last reached. Accounts you can no longer reach move to a
|
|---|
| 53 | collapsed "Unreachable" section for cleanup. Old /following and /followers
|
|---|
| 54 | links redirect to /connect.
|
|---|
| 55 | - **Moderate incoming replies on your own posts.** As the site owner you can now
|
|---|
| 56 | remove a reply from your thread (it stays removed: re-delivery and
|
|---|
| 57 | thread-filling are blocked by a tombstone) and report it to its author's
|
|---|
| 58 | server, straight from the thread. This also works for private replies, which
|
|---|
| 59 | cannot be handled via the fediverse interact flow.
|
|---|
| 60 |
|
|---|
| 61 | ### Fixed
|
|---|
| 62 | - **A boosted video post keeps its video in the Circle.** Boosting a video-only
|
|---|
| 63 | post (Loops.video) stored it without its media, so the Circle showed a bare
|
|---|
| 64 | text tile instead of a video thumbnail; re-boosting could even wipe the video
|
|---|
| 65 | from an already-cached copy. Boosts now carry the full typed media, and a
|
|---|
| 66 | refresh never erases cached media.
|
|---|
| 67 | - **The interact page title follows your language.** "Interacteer via de
|
|---|
| 68 | fediverse" was hardcoded Dutch in the browser tab, even on an English site.
|
|---|
| 69 | - **The Apple Music icon looks like the Apple logo again.** The old icon was a
|
|---|
| 70 | garbled shape.
|
|---|
| 71 | - **Statistics columns no longer jump around in the 30 and 90 day views.**
|
|---|
| 72 | Columns without a date label collapsed slightly; every column now keeps its
|
|---|
| 73 | label line.
|
|---|
| 74 | - **Private replies no longer show on the public post page.** A followers-only
|
|---|
| 75 | or direct (DM) reply to your post was rendered in the public thread for
|
|---|
| 76 | everyone. Incoming replies now record their fediverse addressing; the public
|
|---|
| 77 | thread only shows public and unlisted replies. Private ones still reach you in
|
|---|
| 78 | notifications, with the post they belong to.
|
|---|
| 79 | - **Bare video/audio embeds no longer overflow their column.** A `.webm` /
|
|---|
| 80 | `.mp4` / `.mp3` player now fits the content width like the iframe embeds do;
|
|---|
| 81 | the width rule previously covered only `iframe`.
|
|---|
| 82 |
|
|---|
| 83 | ## [1.4.0] · 2026-07-14
|
|---|
| 84 |
|
|---|
| 85 | ### Added
|
|---|
| 86 | - **Followers list with delivery health.** A new Fediverse tab shows who follows
|
|---|
| 87 | you and when each account was last reached, so dead accounts stand out and you
|
|---|
| 88 | can remove them after a check.
|
|---|
| 89 | - **Bare media links play inline.** A plain `.webm`, `.mp4` or `.mp3` link now
|
|---|
| 90 | renders a native player instead of a dead link.
|
|---|
| 91 | - **Hashtags, links and mentions are clickable on your site too.** `#tags`, URLs
|
|---|
| 92 | and `@mentions` in a post become links on the site itself, not only on the
|
|---|
| 93 | federated copy. Mentions are resolved once when you save, so pages stay fast.
|
|---|
| 94 |
|
|---|
| 95 | ### Fixed
|
|---|
| 96 | - **Replies, comment deletes and reply edits always arrive.** They used to be
|
|---|
| 97 | dropped when a server was briefly unreachable; they now go through the retry
|
|---|
| 98 | queue like posts do.
|
|---|
| 99 | - **Video thumbnails for more videos.** Covers from videos with their metadata at
|
|---|
| 100 | the end of the file (Loops.video, phone exports) now get a thumbnail instead of
|
|---|
| 101 | none.
|
|---|
| 102 | - **A video-only cover shows a poster on the post page.** It no longer renders
|
|---|
| 103 | blank in the Solo view.
|
|---|
| 104 | - **The installed app no longer shows old data on a shaky start.** A cold launch
|
|---|
| 105 | on a poor connection refreshes instead of showing a stale page.
|
|---|
| 106 | - **The Updates page follows your branch.** On the stable branch you no longer
|
|---|
| 107 | see main's changes flagged as "latest".
|
|---|
| 108 |
|
|---|
| 109 | ## [1.3.5] — 2026-07-04
|
|---|
| 110 |
|
|---|
| 111 | ### Fixed
|
|---|
| 112 | - **Polls keep their cover art when boosted.** A poll with music or an embed was
|
|---|
| 113 | federating without its cover, so a boosted poll showed a blank tile; the cover
|
|---|
| 114 | now travels with it.
|
|---|
| 115 | - **The Android app's Updates page shows what's actually installable.** It read
|
|---|
| 116 | the newest release branch, which could be ahead of the phone build for a short
|
|---|
| 117 | while — pressing update then reinstalled the same version. It now reads the
|
|---|
| 118 | version of the phone bundle itself.
|
|---|
| 119 |
|
|---|
| 120 | ## [1.3.4] — 2026-07-04
|
|---|
| 121 |
|
|---|
| 122 | ### Fixed
|
|---|
| 123 | - **Boosts that lost their cover get it back automatically.** Posts you boosted
|
|---|
| 124 | before the cover fix were cached without their artwork; they are refreshed
|
|---|
| 125 | once on the next restart. If a post's home server is briefly unreachable at
|
|---|
| 126 | that moment, it is retried on the next restarts instead of being skipped for
|
|---|
| 127 | good. Boosting a post again now also refreshes its cached copy (cover,
|
|---|
| 128 | content) — from the feed as well as the interact page.
|
|---|
| 129 |
|
|---|
| 130 | ## [1.3.3] — 2026-07-03
|
|---|
| 131 |
|
|---|
| 132 | ### Fixed
|
|---|
| 133 | - **Boosted music posts keep their cover.** When you boosted a track from
|
|---|
| 134 | someone you don't follow, the cover art went missing; it now shows, just like
|
|---|
| 135 | for people you do follow.
|
|---|
| 136 |
|
|---|
| 137 | ## [1.3.2] — 2026-07-02
|
|---|
| 138 |
|
|---|
| 139 | ### Fixed
|
|---|
| 140 | - **The Updates page now works in the Android app.** It now shows the newest
|
|---|
| 141 | available version, and the update button downloads and installs it right on
|
|---|
| 142 | your phone (your posts and settings are kept).
|
|---|
| 143 |
|
|---|
| 144 | ## [1.3.1] — 2026-07-02
|
|---|
| 145 |
|
|---|
| 146 | ### Fixed
|
|---|
| 147 | - **Music keeps playing in the background on Android.** When a track ended while
|
|---|
| 148 | your phone was locked or the app was in the background, the next track would
|
|---|
| 149 | start and stop again after a second. The player now feeds the whole queue as
|
|---|
| 150 | one continuous stream, so auto-advancing to the next track no longer counts
|
|---|
| 151 | as "new" playback that the browser is allowed to pause.
|
|---|
| 152 |
|
|---|
| 153 | ## [1.3.0] — 2026-07-02
|
|---|
| 154 |
|
|---|
| 155 | ### Added
|
|---|
| 156 | - **Choose a light or dark share card.** The auto-generated share image follows your site theme;
|
|---|
| 157 | under Admin → SEO you can now force it light or dark.
|
|---|
| 158 | - **A mention is now a notification.** When someone on the fediverse mentions you in a post —
|
|---|
| 159 | even one that isn't a reply to you — it shows up in your fediverse notifications with a link
|
|---|
| 160 | to the original.
|
|---|
| 161 | - **Cover art on openly shared audio.** A track shared openly on the fediverse now carries its
|
|---|
| 162 | cover art (or the post cover), so audio players that support artwork show it instead of a blank tile.
|
|---|
| 163 | - **Report a post to the fediverse.** From a fediverse post you can now report it to the moderators
|
|---|
| 164 | of its own home server, with an optional reason — and if someone reports your site, the report
|
|---|
| 165 | shows up in your fediverse notifications.
|
|---|
| 166 | - **Set a post's language.** Choose the language you wrote a post in — on the fediverse it enables
|
|---|
| 167 | timeline language filtering and the translate button.
|
|---|
| 168 | - **Alt text for images.** Give your cover image a description (and inline images keep their own
|
|---|
| 169 | alt text) — it federates to the fediverse and lets screen readers describe the picture.
|
|---|
| 170 | - **Mention people in a post.** Typing `@user@server` in a post now links to their profile and
|
|---|
| 171 | notifies them on the fediverse — even if they don't follow you — just like a mention in a reply.
|
|---|
| 172 | - **Short videos in the feed autoplay and loop.** An animated cover or a short (≤30s) clip in the
|
|---|
| 173 | News feed now plays automatically and loops muted, like a GIF; longer videos keep their controls.
|
|---|
| 174 | - **Vote on fediverse polls.** A poll from an account you follow now shows in the News feed with its
|
|---|
| 175 | options and current results, and you can cast your vote — it federates back like any Mastodon vote.
|
|---|
| 176 | - **Create your own polls.** A post can now carry a poll (single or multiple choice, with a set
|
|---|
| 177 | duration). It federates as a real fediverse poll, so your Mastodon followers can vote from their own
|
|---|
| 178 | app; the live results show on the post and the poll closes itself when the time is up.
|
|---|
| 179 |
|
|---|
| 180 | ### Changed
|
|---|
| 181 | - **Sharing audio openly is now one-way.** Once a track is shared openly on the fediverse the file
|
|---|
| 182 | has spread, so "closing" it again would be false security — the editor now locks the choice after
|
|---|
| 183 | opening and warns you before you tick it.
|
|---|
| 184 |
|
|---|
| 185 | ### Fixed
|
|---|
| 186 | - **Remote videos show a preview frame.** A video in the News feed or a Circle tile (e.g. from
|
|---|
| 187 | Loops or PeerTube) used to appear as a black box until you pressed play; it now shows a real
|
|---|
| 188 | poster frame. (Longer videos keep their player controls by design — only clips under 30 seconds
|
|---|
| 189 | autoplay like a GIF.)
|
|---|
| 190 | - **Mentions, hashtags and links inside brackets now work.** A mention like `(@user@server)`, a
|
|---|
| 191 | `(#hashtag)` or a bracketed URL federated as plain text — and the mentioned person was never
|
|---|
| 192 | notified. They now link (and notify) like their unbracketed forms.
|
|---|
| 193 | - **Plain web addresses become links on the fediverse.** A bare URL typed in a post or reply now
|
|---|
| 194 | federates as a clickable link instead of plain text.
|
|---|
| 195 |
|
|---|
| 196 | ## [1.2.0] — 2026-07-01
|
|---|
| 197 |
|
|---|
| 198 | ### Added
|
|---|
| 199 | - **PeerTube videos in the feed.** A PeerTube link in a post now shows an inline player in the News
|
|---|
| 200 | feed, like YouTube, Spotify and SoundCloud already did.
|
|---|
| 201 | - **Light share images.** Sites whose default theme is Light now get a matching light Open Graph card
|
|---|
| 202 | when a page is shared, instead of always a dark one.
|
|---|
| 203 | - **Leave your own visits out of the stats.** As the admin you can now exclude your own IP address
|
|---|
| 204 | from your site statistics, for a truer picture of real visitors.
|
|---|
| 205 | - **Right-click "Save" is turned off on covers, images and videos** — a light bit of friction so the
|
|---|
| 206 | artwork isn't one click from being saved (it's friction, not protection).
|
|---|
| 207 |
|
|---|
| 208 | ### Fixed
|
|---|
| 209 | - **Animated video covers now render correctly everywhere.** In the Circle and the grid they could
|
|---|
| 210 | show up as a broken image or a blank tile; they now display as a proper looping video that fills the
|
|---|
| 211 | square, centred. Right-clicking a cover gives the normal link menu instead of the browser's video controls.
|
|---|
| 212 | - **Following someone no longer gets stuck.** A follow whose first delivery fails (the other server
|
|---|
| 213 | briefly unreachable) is now retried automatically with backoff, instead of staying on "pending" forever.
|
|---|
| 214 | - **Boosted posts show their real text** in the Circle, instead of a "RE: <link>" prefix.
|
|---|
| 215 | - **Hardened fediverse handling** — stricter signature checks on incoming activity, blocks now also
|
|---|
| 216 | cover a boost of a blocked author, and pinned-post syncing no longer races when you save several times quickly.
|
|---|
| 217 |
|
|---|
| 218 | ## [1.1.0] — 2026-06-30
|
|---|
| 219 |
|
|---|
| 220 | ### Added
|
|---|
| 221 | - **Animated covers play smoothly everywhere.** Upload an animated WebP as a cover and Klonkt also
|
|---|
| 222 | makes a muted, looping video of it. iOS Safari — where animated WebP is janky — gets the smooth
|
|---|
| 223 | video, every other browser keeps the crisp WebP, and on the fediverse the cover federates as a
|
|---|
| 224 | video that plays in Mastodon and its apps. Shown on the post, the grid, the feed and related posts.
|
|---|
| 225 | - **Media library (Admin → Media).** See every uploaded image, where each one is used, copy its URL,
|
|---|
| 226 | and clean up unused files in one click — including the leftover video/poster of an animated cover.
|
|---|
| 227 | Images, Audio and Playlists now share one tab bar.
|
|---|
| 228 | - **Share button** at the bottom of every post (native share sheet, or copy link).
|
|---|
| 229 | - **Replace a track's audio file** without re-creating the track.
|
|---|
| 230 | - **Music on the fediverse (first step).** Audio posts now carry schema.org *MusicRecording* /
|
|---|
| 231 | *MusicAlbum* data, and a per-post toggle can share a hosted track as a real fediverse audio
|
|---|
| 232 | attachment that plays in followers' feeds.
|
|---|
| 233 |
|
|---|
| 234 | ### Changed
|
|---|
| 235 | - **Cleaner embeds on Mastodon.** A post with a YouTube/Spotify/SoundCloud link now lets Mastodon
|
|---|
| 236 | show its player card; link-only tracks share their streaming links. The cover still shows in other
|
|---|
| 237 | Klonkt feeds. (On your own site nothing changes — the player and cover render as before.)
|
|---|
| 238 | - **Circles stay in sync the fediverse way** — edits and missed posts catch up automatically via
|
|---|
| 239 | standard ActivityPub, so a Circle no longer drifts out of date.
|
|---|
| 240 | - **Everything Klonkt federates is now valid AS2 / JSON-LD**, guarded by a test, so stricter servers
|
|---|
| 241 | accept it.
|
|---|
| 242 | - The track list is sorted **newest-first**.
|
|---|
| 243 |
|
|---|
| 244 | ### Fixed
|
|---|
| 245 | - **Animated WebP covers are no longer frozen to a single frame** (the crop editor and the thumbnailer
|
|---|
| 246 | left them static).
|
|---|
| 247 | - **Link-only tracks** (Spotify/YouTube, no uploaded file) can be inserted into a post again.
|
|---|
| 248 | - **Link previews** (og:image / Twitter card) now use absolute image URLs, so they show on Signal,
|
|---|
| 249 | WhatsApp and other scrapers.
|
|---|
| 250 | - Several **fediverse delivery fixes**: covers/links no longer turn into a black tile on Mastodon,
|
|---|
| 251 | raw audio files don't clutter a post that already has a player, and dead links from a renamed
|
|---|
| 252 | remote post heal themselves.
|
|---|
| 253 | - The **mobile feed** loads full-resolution covers; long titles wrap instead of overflowing.
|
|---|
| 254 | - **Self-hosting updates** are more reliable: re-running the installer keeps your channel, and the
|
|---|
| 255 | updater no longer restarts or claims an update when you're already up to date.
|
|---|
| 256 |
|
|---|
| 257 | ## [1.0.0] — 2026-06-30
|
|---|
| 258 |
|
|---|
| 259 | ### Added
|
|---|
| 260 | - **Klonkt is now on the fediverse (ActivityPub).** Your site is a real fediverse
|
|---|
| 261 | account: people on Mastodon — or another Klonkt — can follow you, and your posts
|
|---|
| 262 | reach their feeds. You can follow accounts and read their posts in a **News** feed,
|
|---|
| 263 | get **notifications**, and **like, boost and reply** to posts. Incoming activity is
|
|---|
| 264 | verified, so fake replies, likes and followers are rejected.
|
|---|
| 265 | - **Anyone can reply, like or boost your posts from the fediverse** — visitors interact
|
|---|
| 266 | from their own account (they just enter their server); no account on your site needed.
|
|---|
| 267 | - **Circles**: follow other Klonkt sites and show each other's public posts in your
|
|---|
| 268 | Circle — decentralised, with no central platform.
|
|---|
| 269 | - **Sensitive (NSFW) posts** with your own content-warning text: blurred with
|
|---|
| 270 | click-to-reveal across the site, and shown as a content warning on the fediverse.
|
|---|
| 271 | - **Block** an account or an entire domain you'd rather not hear from.
|
|---|
| 272 | - Search now also finds **tracks** (by title, artist and album), playable straight from
|
|---|
| 273 | the results with a link to the post they appear in — and post search matches as you type.
|
|---|
| 274 | - **Live theme preview** in Admin → site settings: accent, theme and palette update
|
|---|
| 275 | instantly, before you save.
|
|---|
| 276 | - Uploaded images are automatically optimised to **WebP** for faster pages.
|
|---|
| 277 | - A roomier **mobile writing experience**: tap to open a distraction-free fullscreen
|
|---|
| 278 | editor, with the formatting toolbar staying in view above the keyboard.
|
|---|
| 279 | - **Long posts collapse in the News feed** with a *read more* toggle, so a long post no
|
|---|
| 280 | longer fills the whole screen — tap to expand or collapse it.
|
|---|
| 281 | - **See everyone in a Circle**: when a Circle has more than five sites, the member count
|
|---|
| 282 | opens a popup that lists them all, so a big Circle no longer hides its members.
|
|---|
| 283 |
|
|---|
| 284 | ### Changed
|
|---|
| 285 | - **Palettes revised to 8**: the neutral **Klonkt** (gold accent) is the new default,
|
|---|
| 286 | plus seven full-colour themes — Forest, Ocean, Teal, Lilac, Sunset, Candy and Amber.
|
|---|
| 287 | - **Your profile federates more completely**: the links on your profile, the date you
|
|---|
| 288 | joined and the accounts you follow now travel along to other servers, so your profile
|
|---|
| 289 | looks complete when someone views it from Mastodon or elsewhere.
|
|---|
| 290 | - **Cover images and avatars are sharper** — resized on the server instead of being
|
|---|
| 291 | squeezed by the browser.
|
|---|
| 292 |
|
|---|
| 293 | ### Removed
|
|---|
| 294 | - **Hub mode** — Klonkt is now **solo or Circles**; you build a collective or label
|
|---|
| 295 | through **Circles** (federated, standalone sites).
|
|---|
| 296 | - **Native comments and Google login** — replies, likes and boosts now run entirely
|
|---|
| 297 | through the fediverse.
|
|---|
| 298 | - **Local favourites (♥)** — replaced by the ⭐ fediverse like.
|
|---|
| 299 |
|
|---|
| 300 | ### Fixed
|
|---|
| 301 | - **Hashtags and mentions now work in every language and script** (e.g. Japanese, Cyrillic,
|
|---|
| 302 | Arabic), both on your site and when federating — not just the Latin alphabet.
|
|---|
| 303 | - **Switching a site to solo (federation off) works again.** Turning the fediverse off could
|
|---|
| 304 | make the whole site return “page not found” instead of just disabling federation; it now
|
|---|
| 305 | cleanly switches federation off while the rest of the site keeps working. (Self-hosters:
|
|---|
| 306 | update to pick up the fix.)
|
|---|
| 307 | - The Fediverse and Notifications items now disappear from the menu when federation is off,
|
|---|
| 308 | instead of lingering.
|
|---|
| 309 | - The mini-player jumps and scrolls to the track that's playing — also from an album or
|
|---|
| 310 | playlist — and keeps it highlighted.
|
|---|
| 311 | - Empty album/playlist covers now fall back to the first track's cover.
|
|---|
| 312 | - A profile photo that broke in the header after the WebP switch now repairs itself.
|
|---|
| 313 | - Many **mobile post-editor** fixes: reliable scrolling, a formatting toolbar that stays
|
|---|
| 314 | put, no page jumps when you tap a button, and a Save bar that sits just above the keyboard.
|
|---|
| 315 | - **Boosts now reach the original poster** — their server registers the boost and notifies
|
|---|
| 316 | them, just like a boost from Mastodon — and a boost is retried if a server is briefly
|
|---|
| 317 | unreachable instead of being sent once and forgotten.
|
|---|
| 318 | - **Unfollowing an account now takes effect on the other server** (it could previously fail
|
|---|
| 319 | to register, leaving you still following on their side).
|
|---|
| 320 |
|
|---|
| 321 | ## [1.0.0-beta.2] — 2026-06-19
|
|---|
| 322 |
|
|---|
| 323 | First release where we actively track the version (shown in the footer — click it for
|
|---|
| 324 | this page).
|
|---|
| 325 |
|
|---|
| 326 | ### Added
|
|---|
| 327 | - Release tracking: the version number in the footer links to this changelog page.
|
|---|
| 328 | - Eight premium features (Patreon-gated): newsletter/mailing list, download-for-email,
|
|---|
| 329 | release scheduling + fan-only previews, EPK/press kit, pro statistics, link-in-bio +
|
|---|
| 330 | click stats, embeddable player, and show agenda + notify-me.
|
|---|
| 331 | - Newsletter signup field in the footer (on/off in Admin → Settings).
|
|---|
| 332 | - SMTP settings configurable in Admin → Settings (no more config-file edit needed), with
|
|---|
| 333 | a test-mail button.
|
|---|
| 334 |
|
|---|
| 335 | ### Changed
|
|---|
| 336 | - Tidier settings forms (stacked labels, full-width inputs).
|
|---|
| 337 | - EPK/press kit shows the top 10 most-listened tracks.
|
|---|
| 338 | - Nicer 404 page (mobile-friendly) and clearer login error messages.
|
|---|
| 339 |
|
|---|
| 340 | ### Fixed
|
|---|
| 341 | - The site-wide audio player wasn't loading any tracks.
|
|---|
| 342 | - Button text became unreadable on hover.
|
|---|
| 343 | - Date pickers now follow the theme.
|
|---|
| 344 | - Back/forward navigation no longer shows a doubled header.
|
|---|