# Development

**URL:** https://meta.discourse.org/c/dev/7.md?page=8

[Latest](https://meta.discourse.org/latest.md) · [Categories](https://meta.discourse.org/categories.md) · [Tags](https://meta.discourse.org/tags.md)

**Page:** 9

---

## [Manually assigning Cheers Points (Gamification)](https://meta.discourse.org/t/manually-assigning-cheers-points-gamification/378134)

<div class="topic-metadata">

**Author:** [@Joe\_F](https://meta.discourse.org/u/Joe_F)\
**Replies:** 2\
**Last updated:** [August 12, 2025, 8:29am UTC](https://meta.discourse.org/t/manually-assigning-cheers-points-gamification/378134 "2025-08-12T08:29:14Z")

</div>

Hi all, I understand at the moment the only way to manually assign cheers points is via API calls, I am currently trying to set this up using a google form into n8n, I seem to be stuck when it tried to make the api cal…

---

## [Add per-user CSS in a plugin?](https://meta.discourse.org/t/add-per-user-css-in-a-plugin/377962)

<div class="topic-metadata">

**Author:** [@NateDhaliwal](https://meta.discourse.org/u/NateDhaliwal)\
**Replies:** 5\
**Last updated:** [August 11, 2025, 11:20pm UTC](https://meta.discourse.org/t/add-per-user-css-in-a-plugin/377962 "2025-08-11T23:20:27Z")

</div>

In a plugin, how does one add a per-user CSS? E.g. caused by a user setting? Adding the styles and whatnot to elements/via stylesheets would be global, no?

---

## [Styling Discourse with variables: A case for simpler semantics](https://meta.discourse.org/t/styling-discourse-with-variables-a-case-for-simpler-semantics/378001)

<div class="topic-metadata">

**Author:** [@manuel](https://meta.discourse.org/u/manuel)\
**Replies:** 5\
**Last updated:** [August 11, 2025, 8:59pm UTC](https://meta.discourse.org/t/styling-discourse-with-variables-a-case-for-simpler-semantics/378001 "2025-08-11T20:59:11Z")

</div>

Continuing the discussion from Styling Discourse with variables: Show & Tell: I totally appreciate the effort to improve Discourse’s theming experience! However, I’m not entirely convinced that the approach of adding a…

---

## [Best Practice for Automating Titles by Group + Trust Level Combinations](https://meta.discourse.org/t/best-practice-for-automating-titles-by-group-trust-level-combinations/377324)

<div class="topic-metadata">

**Author:** [@joo](https://meta.discourse.org/u/joo)\
**Replies:** 14\
**Last updated:** [August 9, 2025, 2:28pm UTC](https://meta.discourse.org/t/best-practice-for-automating-titles-by-group-trust-level-combinations/377324 "2025-08-09T14:28:24Z")

</div>

Hi, I’m looking for the best way to automatically assign user titles based on a combination of group membership and trust level. For example: If a user is in group A and has trust level 1, their title should be “A TL1…

---

## [Does api.decorateCookedElement appear in search results?](https://meta.discourse.org/t/does-api-decoratecookedelement-appear-in-search-results/377818)

<div class="topic-metadata">

**Author:** [@NateDhaliwal](https://meta.discourse.org/u/NateDhaliwal)\
**Replies:** 4\
**Last updated:** [August 8, 2025, 9:52am UTC](https://meta.discourse.org/t/does-api-decoratecookedelement-appear-in-search-results/377818 "2025-08-08T09:52:47Z")

</div>

Basically the title. Does content added via api.decorateCookedElement() appear in sesrch results?

---

## [How to properly move my script to the new JS tab in my component?](https://meta.discourse.org/t/how-to-properly-move-my-script-to-the-new-js-tab-in-my-component/377603)

<div class="topic-metadata">

**Author:** [@Canapin](https://meta.discourse.org/u/Canapin)\
**Replies:** 5\
**Last updated:** [August 7, 2025, 9:33am UTC](https://meta.discourse.org/t/how-to-properly-move-my-script-to-the-new-js-tab-in-my-component/377603 "2025-08-07T09:33:46Z")

</div>

\[Admin Notice\] Theme ‘\_Base’ contains code which needs updating. (id:discourse.script-tag-discourse-plugin) (learn more) For one on my forum, I got rid of this message simply by moving my JS script to the new JS custo…

---

## [Styling Discourse with variables: Show & Tell](https://meta.discourse.org/t/styling-discourse-with-variables-show-tell/376614)

<div class="topic-metadata">

**Author:** [@jordan.vidrine](https://meta.discourse.org/u/jordan.vidrine)\
**Replies:** 1\
**Last updated:** [August 5, 2025, 6:40pm UTC](https://meta.discourse.org/t/styling-discourse-with-variables-show-tell/376614 "2025-08-05T18:40:19Z")

</div>

We’ve recently added a lot of css variables to Discourse. These variables make theming and customizing aspects of the UI much easier. For many changes, you will no longer need to target super specific elements in the htm…

---

## [Making edits to the sidekiq initialising config](https://meta.discourse.org/t/making-edits-to-the-sidekiq-initialising-config/377339)

<div class="topic-metadata">

**Author:** [@merefield](https://meta.discourse.org/u/merefield)\
**Replies:** 2\
**Last updated:** [August 5, 2025, 3:26pm UTC](https://meta.discourse.org/t/making-edits-to-the-sidekiq-initialising-config/377339 "2025-08-05T15:26:43Z")

</div>

As discussed, I’m trying to take advantage of this but have hit a snag, because I’m customising: /config/initializers/100-sidekiq.rb Here’s my altered code, I’m: Giving each job an accessible retry count attribute …

---

## [Removing support for "template overrides" and mobile-specific templates](https://meta.discourse.org/t/removing-support-for-template-overrides-and-mobile-specific-templates/355668)

<div class="topic-metadata">

**Author:** [@david](https://meta.discourse.org/u/david)\
**Replies:** 15\
**Last updated:** [August 5, 2025, 12:09am UTC](https://meta.discourse.org/t/removing-support-for-template-overrides-and-mobile-specific-templates/355668 "2025-08-05T00:09:30Z")

</div>

In the past, you could override the .hbs template for and Discourse Route or Component by adding an identically named file in the templates/ directory of your theme and plugin. This was very powerful, but also came with …

---

## [Updating Twitter icon to X logo](https://meta.discourse.org/t/updating-twitter-icon-to-x-logo/274265)

<div class="topic-metadata">

**Author:** [@JammyDodger](https://meta.discourse.org/u/JammyDodger)\
**Replies:** 9\
**Last updated:** [August 4, 2025, 3:31pm UTC](https://meta.discourse.org/t/updating-twitter-icon-to-x-logo/274265 "2025-08-04T15:31:15Z")

</div>

We’ve temporarily added the X logo as an available icon in core Discourse to allow everyone to make the branding switch on their own. Upgrading the entirety of Font Awesome in Discourse is a very large project, so this…

---

## [Create Plugin to Logout user via uid from SAML](https://meta.discourse.org/t/create-plugin-to-logout-user-via-uid-from-saml/377116)

<div class="topic-metadata">

**Author:** [@PortChange](https://meta.discourse.org/u/PortChange)\
**Replies:** 0\
**Last updated:** [August 4, 2025, 12:11am UTC](https://meta.discourse.org/t/create-plugin-to-logout-user-via-uid-from-saml/377116 "2025-08-04T00:11:19Z")

</div>

I use SAML groups to authenticate users to different categories. When the groups change, the user has to login. I want to automate this in my IDP. When groups changes, it uses the API to logout user curl -X POST “https:…

---

## [The Sidebar is missing the default "custom section" in dev](https://meta.discourse.org/t/the-sidebar-is-missing-the-default-custom-section-in-dev/376894)

<div class="topic-metadata">

**Author:** [@merefield](https://meta.discourse.org/u/merefield)\
**Replies:** 0\
**Last updated:** [August 1, 2025, 4:17pm UTC](https://meta.discourse.org/t/the-sidebar-is-missing-the-default-custom-section-in-dev/376894 "2025-08-01T16:17:43Z")

</div>

Is this intentional, is there a rake task to populate? Have my migrations messed up?

---

## [Introduction to development for notification mail sending with Gmail](https://meta.discourse.org/t/introduction-to-development-for-notification-mail-sending-with-gmail/376772)

<div class="topic-metadata">

**Author:** [@Abris](https://meta.discourse.org/u/Abris)\
**Replies:** 9\
**Last updated:** [July 31, 2025, 8:29pm UTC](https://meta.discourse.org/t/introduction-to-development-for-notification-mail-sending-with-gmail/376772 "2025-07-31T20:29:02Z")

</div>

Hello, I’m new to Ruby and Docker, but having some development experience otherwise. I have a running dev Discourse instance as well a production instance, so dependencies seem to be met. I would like to add Oauth 2.0 f…

---

## [Dev migration error: Discourse AI](https://meta.discourse.org/t/dev-migration-error-discourse-ai/376173)

<div class="topic-metadata">

**Author:** [@merefield](https://meta.discourse.org/u/merefield)\
**Replies:** 7\
**Last updated:** [July 30, 2025, 5:06pm UTC](https://meta.discourse.org/t/dev-migration-error-discourse-ai/376173 "2025-07-30T17:06:05Z")

</div>

PG::UndefinedTable: ERROR: relation "ai\_topic\_embeddings\_1\_1" does not exist LINE 3: FROM ai\_topic\_embeddings\_1\_1; ^ /home/robert/discourse/plugins/discourse-ai/db/migrate/20240611170905\_move\_em…

---

## [Controllers and Routes](https://meta.discourse.org/t/controllers-and-routes/376468)

<div class="topic-metadata">

**Author:** [@itd-john](https://meta.discourse.org/u/itd-john)\
**Replies:** 2\
**Last updated:** [July 29, 2025, 9:51pm UTC](https://meta.discourse.org/t/controllers-and-routes/376468 "2025-07-29T21:51:24Z")

</div>

When following the tutorial for setting up a custom controller and route, I get the Routing Error page. The page lists the paths and controllers, which is all correct however, when I request the resource, I get errors. I…

---

## [User Field not working in a plugin outlet](https://meta.discourse.org/t/user-field-not-working-in-a-plugin-outlet/376353)

<div class="topic-metadata">

**Author:** [@MihirR](https://meta.discourse.org/u/MihirR)\
**Replies:** 1\
**Last updated:** [July 29, 2025, 6:08pm UTC](https://meta.discourse.org/t/user-field-not-working-in-a-plugin-outlet/376353 "2025-07-29T18:08:29Z")

</div>

I’m trying to add this user field: user-fields/5 in this outlet: above-user-summary-stats. But it does not load, here is the hbs I’m trying to use: {{!-- Display and edit a custom user field (e.g., "profile note") for u…

---

## [How to change the Category abbreviation using CSS](https://meta.discourse.org/t/how-to-change-the-category-abbreviation-using-css/376207)

<div class="topic-metadata">

**Author:** [@Mich-Seth\_Owusu](https://meta.discourse.org/u/Mich-Seth_Owusu)\
**Replies:** 0\
**Last updated:** [July 28, 2025, 3:19pm UTC](https://meta.discourse.org/t/how-to-change-the-category-abbreviation-using-css/376207 "2025-07-28T15:19:22Z")

</div>

In case someone else needs to change the category abbreviation using CSS. YOu can target the box and abbreviation and replace it with your own abbreviation using the below CSS code. It took me a while to figure it out so…

---

## [Dev migration error: PGVector](https://meta.discourse.org/t/dev-migration-error-pgvector/376162)

<div class="topic-metadata">

**Author:** [@merefield](https://meta.discourse.org/u/merefield)\
**Replies:** 6\
**Last updated:** [July 28, 2025, 2:02pm UTC](https://meta.discourse.org/t/dev-migration-error-pgvector/376162 "2025-07-28T14:02:52Z")

</div>

Caused by Discourse AI: == 20240611170904 UpgradePgvector070: migrating =============================== rake aborted! StandardError: An error has occurred, this and all later migrations canceled: (StandardError) ERROR:…

---

## [What does refresh: true in settings.yml mean?](https://meta.discourse.org/t/what-does-refresh-true-in-settings-yml-mean/376136)

<div class="topic-metadata">

**Author:** [@NateDhaliwal](https://meta.discourse.org/u/NateDhaliwal)\
**Replies:** 2\
**Last updated:** [July 28, 2025, 9:06am UTC](https://meta.discourse.org/t/what-does-refresh-true-in-settings-yml-mean/376136 "2025-07-28T09:06:59Z")

</div>

I saw refresh: true in a TC’s settings.yml before. I saw this post but I’m still not really understanding it - what does this do when applied to settings? Thanks.

---

## [Create a component under the username in posts](https://meta.discourse.org/t/create-a-component-under-the-username-in-posts/375901)

<div class="topic-metadata">

**Author:** [@SubStrider](https://meta.discourse.org/u/SubStrider)\
**Replies:** 1\
**Last updated:** [July 28, 2025, 8:17am UTC](https://meta.discourse.org/t/create-a-component-under-the-username-in-posts/375901 "2025-07-28T08:17:24Z")

</div>

Continuing the discussion from How to create a custom activity tab in user profile?: This is part of the core now, right? And I can go back to using this space below the username by targeting like this? api.renderInOu…

---

## [Geoblocking using Nginx of the container?](https://meta.discourse.org/t/geoblocking-using-nginx-of-the-container/375783)

<div class="topic-metadata">

**Author:** [@Jagster](https://meta.discourse.org/u/Jagster)\
**Replies:** 3\
**Last updated:** [July 25, 2025, 3:07pm UTC](https://meta.discourse.org/t/geoblocking-using-nginx-of-the-container/375783 "2025-07-25T15:07:41Z")

</div>

Sorry, this is pure 101 question. But I know how to use Nginx to block problematic countries, aka. geoblocking, and stop unwanted user agents. I could use a reverse proxy front of Discourse, I’ve done that before, but I …

---

## [Category carousel only on mobile](https://meta.discourse.org/t/category-carousel-only-on-mobile/375813)

<div class="topic-metadata">

**Author:** [@alltiagocom](https://meta.discourse.org/u/alltiagocom)\
**Replies:** 4\
**Last updated:** [July 25, 2025, 2:40pm UTC](https://meta.discourse.org/t/category-carousel-only-on-mobile/375813 "2025-07-25T14:40:31Z")

</div>

Some forums/communities probably don’t benefit much on having an easy access to categories on mobile, because they are more focused on being a support forum, but for what I’m building, seeing the categories is very impor…

---

## [Embed Discourse Comments in Discourse Topic](https://meta.discourse.org/t/embed-discourse-comments-in-discourse-topic/375001)

<div class="topic-metadata">

**Author:** [@Heliosurge](https://meta.discourse.org/u/Heliosurge)\
**Replies:** 7\
**Last updated:** [July 25, 2025, 3:23am UTC](https://meta.discourse.org/t/embed-discourse-comments-in-discourse-topic/375001 "2025-07-25T03:23:40Z")

</div>

I am looking to see if it is possible to embed a topic on my discourse site in another topic. Say last post as a live comment thread. Ie similar to a news site where there is a comment section. In my use case an aut…

---

## [Bridge discourse with python scripts](https://meta.discourse.org/t/bridge-discourse-with-python-scripts/64852)

<div class="topic-metadata">

**Author:** [@chambers.d](https://meta.discourse.org/u/chambers.d)\
**Replies:** 5\
**Last updated:** [July 25, 2025, 12:48am UTC](https://meta.discourse.org/t/bridge-discourse-with-python-scripts/64852 "2025-07-25T00:48:06Z")

</div>

So I made the switch to use discourse as my main site. I face one obstacle though. I have a few python scripts that I would like to tie to the restful API. I know discourse uses Ruby and I can easily convert my scripts t…

---

## [How to show user total post count beside name](https://meta.discourse.org/t/how-to-show-user-total-post-count-beside-name/287718)

<div class="topic-metadata">

**Author:** [@Farhan\_Hossen](https://meta.discourse.org/u/Farhan_Hossen)\
**Replies:** 30\
**Last updated:** [July 24, 2025, 2:45pm UTC](https://meta.discourse.org/t/how-to-show-user-total-post-count-beside-name/287718 "2025-07-24T14:45:22Z")

</div>

Hi everyone, this is my first post here. I’m wondering how the Blizzard forum shows the total post count of a user besides their name. I’ve implemented something similar in my forum by using the Discourse API system …

---

## [Is it Possible to Send Encrypted Email and Password in the Authentication Flow?](https://meta.discourse.org/t/is-it-possible-to-send-encrypted-email-and-password-in-the-authentication-flow/375072)

<div class="topic-metadata">

**Author:** [@Kon](https://meta.discourse.org/u/Kon)\
**Replies:** 1\
**Last updated:** [July 21, 2025, 3:41pm UTC](https://meta.discourse.org/t/is-it-possible-to-send-encrypted-email-and-password-in-the-authentication-flow/375072 "2025-07-21T15:41:41Z")

</div>

Hi all, I’m exploring a use case where we would need to send encrypted email addresses and passwords as part of the authentication flow in Discourse. Before proceeding further, I wanted to check if this functionality is…

---

## [Sending an api request in a plugin](https://meta.discourse.org/t/sending-an-api-request-in-a-plugin/374928)

<div class="topic-metadata">

**Author:** [@NateDhaliwal](https://meta.discourse.org/u/NateDhaliwal)\
**Replies:** 3\
**Last updated:** [July 20, 2025, 8:04am UTC](https://meta.discourse.org/t/sending-an-api-request-in-a-plugin/374928 "2025-07-20T08:04:26Z")

</div>

How can I send an API request in a plugin, e.g. to change a user’s data? Preferably, with no need to specify an API key? Thanks.

---

## [Showing different content for mobile view in a .gjs file](https://meta.discourse.org/t/showing-different-content-for-mobile-view-in-a-gjs-file/374657)

<div class="topic-metadata">

**Author:** [@martinmodrak](https://meta.discourse.org/u/martinmodrak)\
**Replies:** 5\
**Last updated:** [July 18, 2025, 7:45am UTC](https://meta.discourse.org/t/showing-different-content-for-mobile-view-in-a-gjs-file/374657 "2025-07-18T07:45:54Z")

</div>

Trying to update our custom theme component to the new standard after the deprecation notice and I can’t figure out how to show different stuff for mobile users in this setting. The theme guide doesn’t mention anything …

---

## [How to use notifications for a custom model?](https://meta.discourse.org/t/how-to-use-notifications-for-a-custom-model/209168)

<div class="topic-metadata">

**Author:** [@pfaffman](https://meta.discourse.org/u/pfaffman)\
**Replies:** 1\
**Last updated:** [July 18, 2025, 4:42am UTC](https://meta.discourse.org/t/how-to-use-notifications-for-a-custom-model/209168 "2025-07-18T04:42:33Z")

</div>

I have a custom server model in a plugin. When a user interacts with that model to create or upgrade a server I want to send a notification when it’s done. The notification model has: belongs\_to :user belongs\_to :to…

---

## [Possible to create a Sign in with Ghost plugin for Discourse?](https://meta.discourse.org/t/possible-to-create-a-sign-in-with-ghost-plugin-for-discourse/329328)

<div class="topic-metadata">

**Author:** [@stromfeldt](https://meta.discourse.org/u/stromfeldt)\
**Replies:** 10\
**Last updated:** [July 18, 2025, 3:27am UTC](https://meta.discourse.org/t/possible-to-create-a-sign-in-with-ghost-plugin-for-discourse/329328 "2025-07-18T03:27:42Z")

</div>

A year and a half ago the Discourse on Ghost integration was announced, allowing Ghost members to seamlessly access the site’s forum with the same permissions they have on the publication. One “downside” of the integrati…

[Previous page](https://meta.discourse.org/c/dev/7.md?page=7)

[Next page](https://meta.discourse.org/c/dev/7.md?page=9)
