Today on meta.discourse.org…
Key Stats
It was a busy 24 hours on meta.discourse.org: the community produced 68 new posts across 31 new topics, earning 58 likes in total. Development, Voice, and dark-mode styling dominated the conversation, with a healthy dose of self-hosting troubleshooting and feature brainstorming.
Top contributors by activity
| User | Posts | Likes received |
|---|---|---|
| Nat | 3 | 8 |
| Ed_S | 2 | 6 |
| Terraboss | 7 | 5 |
| Awesomerobot | 3 | 4 |
| NateDhaliwal | 5 | 3 |
| Manut | 4 | 3 |
| SkyeDragon | 2 | 3 |
| Ethsim2 | 1 | 3 |
| Lilly | 1 | 3 |
| MDNJ | 3 | 2 |
Interesting Topics
ux
-
Ed_S reported that the red “last visit” line is nearly invisible in dark mode on iPhone, earning five likes for the screenshot-filled report. Nat responded within hours, sharing a GitHub PR fix (discourse/discourse#44177) with side-by-side dark/light comparison screenshots. The report echoes Ed_S's earlier observation that the red line sometimes disappears from the topic list entirely when there are no new posts since the last visit.
-
Terraboss walked through a deep CSS mystery:
backdrop-filter: blur()works flawlessly on.d-headerbut falls flat on.menu-paneland the search dropdown, even with identical recipes. Awesomerobot provided CSS overrides for the opaque row backgrounds, then explained that the header’s backdrop-filter becomes the compositing root, trapping nested dropdowns into only blurring content within the header — finally offering a pseudo-element workaround that did the trick. The whole journey inspired Terraboss to release Terraglass, a full open-source frosted-glass theme with WCAG AA-checked light/dark palettes, configurable blur, and X-style onebox previews.
#Feature
-
The long-running request for an admin “regular mode” (a sudo-like way to experience the forum as a normal user) picked up steam. Nathank described wanting a low-friction way to experience what users see while keeping superpowers reachable; NateDhaliwal suggested a banner UI similar to user impersonation showing time remaining and an exit button; and Jonathan5 proposed selecting from trust levels and groups.
-
Ethsim2 provided a detailed update on the recurring-events successor-topic feature, weighing the merits of an
after_codebackport hook against merging the functionality into the bundled Events plugin, and referencing the open upstream PR #43187. Ethsim2 noted that a separate plugin would be brittle and prefers either merging into core or exposing a supported hook around recurring-event rollover. -
Roke_Julian_Lockhart kicked off a fresh feature request to allow modifying posts in the review queue, linking back to the earlier support question that indicated it isn’t currently possible — and presuming the answer is still no while making the case for the feature.
Support
-
NateDhaliwal flagged that status.discourse.org still listed the legacy “Starter” plan instead of “Free.” RGJ offered a nuanced take — the plan not being available for purchase doesn’t mean there are no customers still on it — and Nat updated the status page to include both.
-
A wave of read-only mode reports hit during planned maintenance. Heather_Phillips asked why her site was suddenly locked, and Tgxworld confirmed it was scheduled maintenance. Meanwhile Kesa_Sayed hit a 500 error trying to disable read-only mode on their NRL forum, with Chrisr pointing to status.discourse.org and the 30-minute maintenance window.
-
Burke requested that
user_badgewebhook payloads include usernames alongside user IDs, to avoid admin-only API lookups for an external service. Putty suggested Discourse Workflows as a workaround, and NateDhaliwal wondered why there’s no public-facing endpoint for user-by-id whenlogin_requiredis off.
bug
-
Manut isolated a mysterious recurring
ActionController::RoutingError (No route matches [POST] "/srv/se")on fresh ESR dev containers (dev-install), tracing it to thehuman-activity-tracker.jsservice. NateDhaliwal reproduced it on non-ESR too, and Nat escalated it internally. -
Fresh dev instances also brought broken QUnit testing: Manut reported bare-specifier errors (
discourse/plugins/styleguide?was not remapped) when running the web UI test runner for plugins with dependencies. Awesomerobot reproduced it in Firefox and submitted a fix in PR #44181. Separately, Manut found that CLI QUnit runs fail out of the box because Chrome isn’t installed in the container. -
MachineScholar reported that selecting DeepFilterNet noise suppression on Safari completely silences the microphone in Voice calls — on both self-hosted LiveKit and LiveKit Cloud. They also updated the Voice + LiveKit thread to confirm low-resolution, stuttering video persists across iPad Safari and macOS Chrome regardless of the LiveKit hosting provider.
#Announcements
- SkyeDragon shared feedback from weekend Voice usage (voice): the system transmits true stereo from mics that often only output one channel, leaving listeners hearing the speaker in only one ear. Falco clarified that Voice downmixes to mono on every audio quality setting except maximum — though SkyeDragon noted it would be nicer to toggle that independently rather than lowering bitrate.
blog
- Nukeador revived last year’s “Building Communities That Think” post, sparking a rich discussion about real-time chat (Telegram, Slack, WhatsApp) draining engagement from async forums. Satonotdead argued that forums must offer unique value, and Orioni shared an AI-assisted bridge tactic: copying heavy Discord discussions, summarising them with AI, and posting the result to Discourse with links back to the original conversation.
#Plugin
- MDNJ ran into inconsistent date/time formatting in the Discourse Events plugin (events): excerpts, event cards, and popups mix day-before-month and 12H/24H clocks, and even setting “display local time” with the correct timezone made no difference. In a related thread, Manut asked whether the new event creation form (events) can still be overridden by plugins, noting that an old plugin outlet now corresponds to the advanced form on ESR.
#Theme component
- Terraboss announced the first milestone of his X/Twitter native embed fork, adding dark mode, plain-link removal once the tweet loads, fallback embedding for bare X links, and a fix for quote replacement — while Lilly confirmed the original component still works on her site.
Activity by the Team Group
-
Nat had a productive day: responded to the dark mode last-visit line report with a GitHub fix and comparison screenshots, updated status.discourse.org to reflect the “Free” plan, and flagged the POST /srv/se 404 issue to the relevant team with a promise to follow up.
-
Awesomerobot helped Terraboss debug the backdrop-filter menu panel mystery, first providing CSS overrides for the opaque notification rows, then explaining the compositing-root restriction and sharing a pseudo-element workaround that finally delivered the frosted-glass effect. They also reproduced and fixed the QUnit web UI test failure in PR #44181.
-
Tgxworld reassured an anxious site admin that their forum’s read-only mode was due to scheduled maintenance, apologising for the inconvenience.
-
Chrisr directed another admin to the scheduled maintenance announcements on status.discourse.org, confirming their site would switch back to read/write within 30 minutes.
-
RGJ added valuable context to the plan-rename discussion: just because the “Starter” plan is no longer sold doesn’t mean there aren’t customers still on it.
-
Falco responded to the stereo-mic Voice report, clarifying that Voice downmixes to mono on every audio quality setting except maximum, and suggested testing at a lower quality.
From invisible red lines to voices whispering in just one ear, yesterday was all about making the unseen seen and the unheard heard — with a little frosted glass and a whole lot of CSS magic along the way! ![]()