Devcalendar-and-event#rest-api: ShiverTimber4973 shared a Python script to sync iCal/ICS feeds into Discourse topics—idempotently updating events by UID—prompting Ethsim2 and Cathyy01 to request a step-by-step admin guide and plugin packaging for non-coders read more.
Bug#theme-creator:Lilly observed that Theme Creator is locked in Chrome on the Horizon theme, with hidden consoles in Safari, leading NateDhaliwal to confirm the issue and david to disable the old component version read more.
Bug iOS users on 16.7.11 reported transparent dropdowns and overlapping UI elements on mobile, with sam and chapoi troubleshooting before david merged a backport fix to stable read more.
Installation Update to 3.5.0.beta9 caused rebuild failures due to a duplicate plugin directory (discourse-feature-voting), and david guided removing the old line from app.yml to restore migrations read more.
Support#brand-header:simonk flagged an overly restrictive compatibility entry in the Brand Header component; david clarified that beta9 users can install the update despite the pre-fix in .discourse-compatibilityread more.
Bug#ai:J-Ha_Hasegawa showed that the Claude Sonnet 4 spam persona returned “Not spam” despite logs marking clear promotions as SPAM; Roman updated the test prompt to align the detector’s output with the scan log read more.
#Sysadminshow-to#letsencrypt:featheredtoast announced multi-domain SSL support in discourse_docker, using DISCOURSE_HOSTNAME_ALIASES in app.yml to set alternate hostnames for Let’s Encrypt certificates read more.
SupportMonikas asked if a direct tar of /var/discourse could simplify migration; Canapin pointed to an rsync guide and pfaffman recommended ./launcher cleanup to free space pre-backup read more.
SupportPicho_Pelis hit SMTP send failures with the Maileroo service; NateDhaliwal suggested port 2525 for DigitalOcean and testing on Hetzner VPS read more.
Support#seo:sam advised centralizing forum discussions to build domain authority and improve PageRank, using inbound link analysis to diagnose keycloak.discourse.group indexing issues read more.
Support#rest-api:Nikki_Locke explored adding/removing group owners via the API, uncovering endpoint nuances and pfaffman directing to the reverse-engineering guide for accurate parameters read more.
Feature#chat:donaldsoncd discovered a “My Threads” menu entry when DM threading was enabled, sparking calls to add a global toggle to disable chat threads with “My Threads” read more.
Bugpollspr-welcome#rest-api:clechasseur submitted a PR to avoid duplicate entries in /polls/voters.json, after experimentation revealed non-deterministic ordering could yield repeats read more.
Supportbartv noted that the “Download remote images to local” feature auto-disables despite sufficient disk space; Canapin linked to discussions on backup compression space requirements read more.
With impersonations, spoilers, and calendar tweaks all rolling in, yesterday proved meta.discourse.org is where the fun—and the fine-tuning—never sleeps!
lindsey kicked off Current Projects – August 2025, our monthly look at what the Discourse team is building next, including a revamped lightbox experience and centralized authentication testing. See the full rundown here and join the feedback thread.
Shauny found an error with Tooltipify-words after upgrading Discourse. Arkshine merged a fix in a quick PR and confirmed resolution hereread more.
ToddZ asked how to prevent Google OAuth2 users from getting default names like “User1”, and pmusaraj explained it stems from the “use email for username” setting. Lindsey then suggested improving the signup experience by leaving the field blank rather than auto-naming. Discussion at 379798/1 and solution talk at 379798/3.
Shauny noticed the background colour on unread notifications disappeared after a header redesign. chapoi traced it to a conflicting secondary palette variable and guided a reset at 379818/5read more.
janbolmeson ran into the [wrap]-token issue in the new composer, seeking a replacement for custom banners in rich text mode. chapoi confirmed internal discussion and promised updates at 379830/4details.
J-Ha_Hasegawa tested the new AI spam bot and found posts still slipping through when sent by admin-level users. Roman clarified the bypass conditions (e.g., trust level >1 or staff) at 379375/8 and confirmed the feature is working as intended after testing from a TL0 account read more.
NateDhaliwal reported the composer preview on mobile wasn’t fullscreen in Markdown mode. chapoi repro’d the issue and shipped a fix in discourse/discourse#34485 after confirming the behavior at 373852/7.
An old Bug on site header overlapping the composer on mobile was revisited. chapoi confirmed it’s now intentional for full-screen writing, with the header hidden when the composer opens at 366008/2.
JBdama proposed a security enhancement to allow stronger SSH keys (e.g., Ed25519 or RSA-4096) for Git-based theme/component installs. The request is logged at 379821/1 under development.
NateDhaliwal suggested a “Back to parent category” button in sub-category view. chapoi shared a sidebar workaround at 379774/2 and discussed possible UX changes at 379774/3.
In Unboxing Discourse 3.5, Albert_Dessaint debated whether the showcased theme was public or internal. chapoi clarified it’s an internal design in progress at 379249/9.
schleifer disagreed with the placement of the bookmark reminder notification preference, expecting it under Notifications instead of Interface. Details at 379938/1.
ToddZ asked for examples of “Introduce yourself” topics in the wild. Bas shared tips on making a single-topic megathread engaging and linked to past case studies at 379776/2.
#Site Management
In the Content Localization topic, nat explained why diffing translated content isn’t supported and highlighted the outdated-translation indicator at 370969/20.
FeatureAdd a CLI warning when running launcher bootstrap/rebuild without app.yml present Ethsim2 proposed clearer messaging for the common case of missing app.yml and standalone.yml confusion, sparing new admins a dead end. As noted in the official backup/restore guide, restoring or copying a prior app.yml is also a frequent use case. read more
SupportNo more live reload with CSS modifications?
After upgrading to 3.5.0, rahim123 noticed that theme component CSS changes no longer auto-reload on production. RGJ confirmed this was an intentional disablement to prevent issues during theme or core updates. read more
UXIs the login page .d-header color supposed to be the secondary color? rahim123 reported that a light --secondary header broke their light-text logo on the login page. chapoi explained this was an intentional de-emphasis to keep the focus on signing in. read more
SupportUrgent help needed! I accidentally deleted the “feature request” section yachun_li, a paid member, wiped a category without backup and needed to restore it or recreate the slug for an embed. Canapin advised emailing team@discourse.org and referenced the Recover deleted categories procedure. read more
UX“Message” and “Chat” buttons on a user’s own profile page donaldsoncd found the prominent Message/Chat CTAs confusing on mobile. NateDhaliwal shared a CSS snippet under the Mobile theme tab to hide them for a cleaner profile view. read more
SupportI forked the Discourse repository on GitHub. How can I replace it with the existing Discourse installation on my site? kuaza modified app.yml to point to their fork but saw Discourse revert to main. RGJ suggested more detailed error logging to troubleshoot the Git remote workflow. read more
SupportThe upgrade saga continues
On a dual-site Docker host, MikeNolan found inbound email working on one forum but not the other post-upgrade, with no clues in the Discourse mail logs. read more
CommunityHow have you built a local community around Discourse? justinm invited stories of geographically focused forums (from meal-delivery volunteers to neighborhood hubs), pointing to past successes like the COVID-19 meal delivery community. read more
FeatureGenerate a review item when a flag is resolved by the “Take Action…” feature per1234 proposed always logging moderation actions (even “Hide Post”) to satisfy DSA transparency. ondrej noted that only some actions currently create review items. read more
DevPlugin Modal Component Import Error joo ran into module import errors migrating legacy DModal code. NateDhaliwal advised using relative paths (e.g., ../components/modal/...) instead of the discourse/ prefix. read more
AnnouncementsBundling more popular plugins with Discourse core
After several plugins moved into core, rlauriston’s update errors hinted at leftover git clone lines in web_only.yml. featheredtoast explained the hint logic and suggested pruning those lines for clearer errors. read more
sam weighed in on AI bot – Personas, championing the forum researcher use case for persona-driven LLMs. read more
chapoi clarified the switch to var(--secondary) on the login page header in Is the login page .d-header color supposed to be the secondary color? read more
chapoi provided an admin-screenshot walkthrough to move the “Filter” link out of the More submenu in Move sidebar “Filter” item out of “More” submenu? read more
Lilly modernized the JS API for Image Alignment and Grid, planning further enhancements soon. read more
featheredtoast debugged the bundled-plugins hint behavior in Bundling more popular plugins with Discourse core. read more
renato requested a reproduction on Meta for the lingering inline spoiler-blur issue in Spoiler blur support for composer’s new rich text mode. read more
Phew! With rebuild warnings, image sleuthing, and Postgres gymnastics behind us, our virtual pups can finally curl up for a snooze.
agemo floated a tip button concept in post #1 and later brought in a related pay-best-answer idea via post #7, before refining the model in post #6. read more
A new Any-Emoji mode for reactions was merged as an experimental feature by martin in post #31 and discussed for mobile UX issues in post #33. read more
Community interest in maintenance mode resurfaced as GamersUnited-pro previewed a custom plugin in post #8 and revisited core discussion from the original post #1. read more
A recent update introduced unwanted spaces around markdown footnotes; lilydjwg reported this in post #1 and chapoi confirmed a merge fix in post #2. read more
Disabling AI embeddings without a model selected led to errors; sam flagged the issue in post #2 and Roman reviewed validation logic in post #3. read more
A Namecheap SMTP setup on self-hosted Discourse stalled at port 587. LG1 shared config details in post #1 and uncovered DigitalOcean port blocks in post #4. read more
Chinese-language users sought free SMTP options; ace_1 began troubleshooting in post #1 and confirmed a port fix in post #3. read more
Calls for clearer update warnings led Benjol to suggest log highlighting in post #6, while RGJ weighed in on race conditions in post #7. read more
Enforcing a required tag via theme JS was solved by chapoi pointing to built-in tag groups in post #2, after outlining the use case in post #1. read more
Intermittent “whispers” display glitches were traced to the post-voting plugin. patrickemin reported in post #1 and detailed repro steps in post #3. read more
A new Plotly graph embed theme component lets users insert charts; NateDhaliwal introduced it in post #1 and users tested icon rendering in post #2. read more
The Advanced Search Banner component saw RBoy report a missing placeholder in post #196 and nolo suggest a site-text workaround in post #199. read more
sam weighed in on BugDisabled Uncategorized UI leakage in post #10 and post #13, proposed CJK word-count tweaks in post #4, and patched the message bus base-URL logic in post #2.
chapoi connected tipping ideas to the pay-best-answer thread post #7 and streamlined Message/Chat buttons on one’s own profile in post #8.
martin enabled experimental any-emoji support for Discourse Reactions in post #31.
awesomerobot built a fix for the welcome banner search text in post #24, demystified “Other traffic” on site analytics in post #2, and responded to an accessibility heading-nav report in post #12.
j.jaffeux reviewed and confirmed the S3 chat image upload fix in post #16.
pmusaraj proposed new iOS app home-screen toggles for Hot Topics & site URLs in post #32 and clarified date ordering for right-sidebar blocks in post #162.
Roman dove into the AI embeddings disable bug, validating model checks in post #3.
BugUXcomposer
A user flagged the relocation of the “Quote whole post” button into the Options dropdown, and nat highlighted the new post menu site setting to reorder buttons in “Quote whole post” button location.
UX
Thoka reported misaligned headers and buttons in the permissions table for long translations and shared a CSS fix in Bad permission table alignment.
Supportemail
Ace_1 fixed Namecheap/Brevo SMTP issues by adding the correct domain and DNS records, and recommended using Mail-Tester in 哪些免费的邮件服务器可以用于Discourse.
chapoi restored the mobile Create topic button in Horizon 369608/44, clarified quoting options in 380263/7, and guided a user through iOS browser support 380297/8.
nat confirmed default mobile create button behaviors in Horizon 380264/2 and investigated the Calendar plugin search placement 379748/4.
david outlined maintenance challenges and future plans for the Theme Creator in 379393/5.
Canapin proposed hiding silenced users from the whos-online list to improve cleanliness feature request; community weighed moderation vs cosmetic benefits.
Community members explored multilingual posting in Language switcher and language content, as Jagster and Moin demonstrated toggling between original and translated text and uncovered minor UI gaps around AI summaries read more.
#Site Management
The revamped Discourse ID unified login flow impressed ondrej in How Discourse ID works, showcasing single-sign-on benefits for cross-community engagement read more.
Open-web projects celebrated inclusion in Discourse Discover in Including your site in Discourse Discover, with philh noting a top-rank position for streamlined discovery under the how-to directory read more.
sam led a discussion on image handling for AI contexts in Managing Images in AI context, weighing markdown-retained vs. appended payload strategies for LLM consumption read more.
A bug in AI-helper custom prompts limited the feature to mods and admins only in Ai自定义提示如何给用户使用, and Moin provided a Rails console workaround to expand access to trust level 0 users read more.
With AI demos, calendar time-travel, and CSS wizardry, Meta’s pawsome energy keeps the forum howling—no puppies were harmed, but our brains are delightfully scrambled!
Everything is translated, help! tvavrda sparked a deep debate on whether fully blending multilingual posts into one “My language” view kills cultural nuance, with Jagster and schneeland weighing in on pros and cons of per-user locale options. read more
Language switcher and language content nat diagnosed a language-detection quirk in the composer that mislabels English posts with French mentions, explaining the fallback logic in the locale detector code. read more
Only some threads are unabled for viewing nat guided a new moderator through safe-mode and plugin troubleshooting after reports of empty topics and laggy thread toggles on ForoMusculo.com. read more
Content Localization and Automatic Translations for Your Community Tordanik reminded everyone that polyglots may want to keep multiple original languages visible, not force everything into one chosen locale. read more
Discourse Calendar updated to use fullcalendar 6 hellekin humorously noted that leading zeroes on dates now ensure correct chronological sorting in the calendar plugin. read more
Discourse Math Ethsim2 and ShiverTimber4973 shared tips on prompting external AI services to remember $…$ for math versus \$ for currency, streamlining copy-paste workflows. read more
Inconsistent plugin settings RGJ pointed out that some plugins expose settings in the sidebar while others hide them under “Installed plugins,” and Moin linked to an internal topic tracking a unified UI update. read more
Re-order the groups list Richie proposed alphabetizing groups by full name (or at least @name), sparking a conversation on whether interface-language differences should affect group order. read more
Add ‘stop impersonating’ link to user avatar dropdown when impersonating hellekin envisioned expanding impersonation into a full persona system (e.g., @narrator, @characterN) with proper logging—an idea building on sudo-mode and staff aliases. read more
What are the prospects for an official Salesforce Integration/Plugin? MarkDoerr highlighted the recent release of an official Discourse Salesforce plugin to bridge communities with CRM workflows. read more
Internal Server Error when previewing digest emails xkhalid reported a 500 error on /admin/email/preview-digest when the “Last seen user” date uses Arabic numerals; Moin confirmed reproduction in Arabic interface and outlined steps to reproduce. read more
New user responding to invite fails, word_watcher.rb:258 error kgrier traced a registration crash to censored-word regex changes, clearing watchwords to restore invite acceptance; j.jaffeux is set to repro. read more
Viewing email templates in wysiwyg composer causes an error xkhalid discovered that toggling the new WYSIWYG mode on system message templates yields a composer exception; Moin reproduced it with the editor toggle. read more
Rich Text editor in topics breaks white-space characters in multiple ways rimelek detailed how the Rich Text composer mangles code block line breaks and indentation, leading to single-line code dumps; per1234 pointed to an existing bug report. read more
Unboxing Discourse 3.5 mcwumbly reminded folks that stable-branch installs will continue to receive security patches over the next six months, offering admins a smoother upgrade path. read more
dax and davidkingham discussed legacy token support in Reply Template, planning [wrap] handling post-meetup after the current focus on the annual gathering.
hugh unveiled a redesigned interface for community branding with smoother color palette editing, integrating light/dark previews and default palette controls in Announcementscolor-palettes; read more
The Discourse Calendar plugin got a bump to fullcalendar 6, addressing recurring event DST issues and improving stability in Announcementscalendar-and-event; read more
nat introduced multi-language display preferences so fluent users can view posts in any of their known languages rather than a single locale in Featurecontent-localization; read more
thoka suggested a filter for globally pinned topics (in:pinned-globally) to ease discovery, leading to community proposals in Featuretopic-filter; read more
Damian_Boon reported that the bottom nav bar on Android PWAs ignores theme palettes, leading to poor visibility for dark themes in Supportmobile; read more
Users encountered a “Malformed version number” error when loading the /review or /plugin pages, traced to a bad entry in the new features API feed in Support; read more
A markdown wrap issue prevented calendar events from rendering (div_calendar_wrap), requiring a switch to the markdown editor in Supportcalendar-and-event; read more
Quoting multilingual content sometimes preserves the user’s view language rather than the original, causing awkward mix-ups in Bugcontent-localization; read more
The AI translation settings graph was hidden despite features being enabled, due to strict backfill requirements, leading to clarifications and tweaks in Bugaicontent-localization; read more
After deleting a topic, some users saw a delete button instead of the restore action, making self-service restoration tricky in BugUX; read more
A heated thread on Automatic Translations explored the SEO, UX, and cultural impact of AI proxies in global discussions, with key insights by tvavrda and nat in Communityaicontent-localization; read more