# Development

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

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

**Page:** 17

---

## [Get category ID from topic - Deprecation notice: controller:navigation/category no longer exists](https://meta.discourse.org/t/get-category-id-from-topic-deprecation-notice-controller-navigation-category-no-longer-exists/347733)

<div class="topic-metadata">

**Author:** [@robertkibet](https://meta.discourse.org/u/robertkibet)\
**Replies:** 1\
**Last updated:** [January 17, 2025, 9:59pm UTC](https://meta.discourse.org/t/get-category-id-from-topic-deprecation-notice-controller-navigation-category-no-longer-exists/347733 "2025-01-17T21:59:08Z")

</div>

We currently have \<script type="text/discourse-plugin" version="1.4.0"\> const controller = container.lookup('controller:topic'); const controllerNavCategory = container.lookup('controller:navigation/category'); …

---

## [Preloading custom data and fields in the topic list](https://meta.discourse.org/t/preloading-custom-data-and-fields-in-the-topic-list/57389)

<div class="topic-metadata">

**Author:** [@sam](https://meta.discourse.org/u/sam)\
**Replies:** 8\
**Last updated:** [January 17, 2025, 3:36pm UTC](https://meta.discourse.org/t/preloading-custom-data-and-fields-in-the-topic-list/57389 "2025-01-17T15:36:46Z")

</div>

Certain plugins need the ability to “preload” data in the topic list. Some specific examples: Discourse solved adds an icon on the topic list when a topic is solved Discourse assign will display the username the topic…

---

## [What is the canonical approach for a plugin to create bots?](https://meta.discourse.org/t/what-is-the-canonical-approach-for-a-plugin-to-create-bots/347647)

<div class="topic-metadata">

**Author:** [@av203](https://meta.discourse.org/u/av203)\
**Replies:** 0\
**Last updated:** [January 17, 2025, 10:23am UTC](https://meta.discourse.org/t/what-is-the-canonical-approach-for-a-plugin-to-create-bots/347647 "2025-01-17T10:23:42Z")

</div>

Hey, I’m looking into a implementing a plugin that creates and manages bots as part of its’ functionality. My requirements for these bots are: There is a dynamic number of them, not a predefined set amount They need …

---

## [One attempt at keeping a Dev environment up to date](https://meta.discourse.org/t/one-attempt-at-keeping-a-dev-environment-up-to-date/347535)

<div class="topic-metadata">

**Author:** [@pfaffman](https://meta.discourse.org/u/pfaffman)\
**Replies:** 4\
**Last updated:** [January 17, 2025, 2:18am UTC](https://meta.discourse.org/t/one-attempt-at-keeping-a-dev-environment-up-to-date/347535 "2025-01-17T02:18:50Z")

</div>

As I lamented here, I often feel like I spend more time trying to keep my dev environment up to date than I do writing code. I have a script that I use to start up Discourse with a bunch of ENV settings that also does a…

---

## [Flutter Discourse Gmail Login](https://meta.discourse.org/t/flutter-discourse-gmail-login/347008)

<div class="topic-metadata">

**Author:** [@Bee0510](https://meta.discourse.org/u/Bee0510)\
**Replies:** 0\
**Last updated:** [January 14, 2025, 7:22am UTC](https://meta.discourse.org/t/flutter-discourse-gmail-login/347008 "2025-01-14T07:22:53Z")

</div>

I want to make my own community using discourse api. I am using flutter framework. I tried a lot of ways to login through gmail sso using the discouse API endpoints. Can someone tell me how can i do it?

---

## [Custom user fields not available in api](https://meta.discourse.org/t/custom-user-fields-not-available-in-api/346745)

<div class="topic-metadata">

**Author:** [@markschmucker](https://meta.discourse.org/u/markschmucker)\
**Replies:** 2\
**Last updated:** [January 12, 2025, 3:05pm UTC](https://meta.discourse.org/t/custom-user-fields-not-available-in-api/346745 "2025-01-12T15:05:27Z")

</div>

I define a new user custom field: User.find\_each do |user| user.custom\_fields\['foo'\] = 0 user.save\_custom\_fields end That works- now each user has 8 custom fields: \[18\] pry(main)\> User.find(1).custom\_fields =\> { …

---

## [How do I use api.registerTopicFooterButton?](https://meta.discourse.org/t/how-do-i-use-api-registertopicfooterbutton/346651)

<div class="topic-metadata">

**Author:** [@NateDhaliwal](https://meta.discourse.org/u/NateDhaliwal)\
**Replies:** 2\
**Last updated:** [January 12, 2025, 12:40am UTC](https://meta.discourse.org/t/how-do-i-use-api-registertopicfooterbutton/346651 "2025-01-12T00:40:40Z")

</div>

As mentioned in: What do I put in action, if I wish to register a DButton there, that perhaps does an action as specified in the DButton’s @action?

---

## [Discourse Theme CLI errors with pnpm installed node\_modules due to symlinks](https://meta.discourse.org/t/discourse-theme-cli-errors-with-pnpm-installed-node-modules-due-to-symlinks/341168)

<div class="topic-metadata">

**Author:** [@Alteras](https://meta.discourse.org/u/Alteras)\
**Replies:** 5\
**Last updated:** [January 9, 2025, 6:38pm UTC](https://meta.discourse.org/t/discourse-theme-cli-errors-with-pnpm-installed-node-modules-due-to-symlinks/341168 "2025-01-09T18:38:44Z")

</div>

When running the Discourse Theme CLI in a theme component repo with pnpm node\_modules installed, the discourse\_theme watch . command will return errors about node\_modules/.pnpm directories already being watched. At a cur…

---

## [Add custom markdown quote bbcode tags](https://meta.discourse.org/t/add-custom-markdown-quote-bbcode-tags/345910)

<div class="topic-metadata">

**Author:** [@ego-lay\_atman-bay](https://meta.discourse.org/u/ego-lay_atman-bay)\
**Replies:** 3\
**Last updated:** [January 8, 2025, 2:16am UTC](https://meta.discourse.org/t/add-custom-markdown-quote-bbcode-tags/345910 "2025-01-08T02:16:06Z")

</div>

I am developing a discourse extension to display snapblocks. I was able to add bbcode tags that get replaced with the blocks, unfortunately if you select to quote the blocks, you get the text in the block in a code block…

---

## [There are some places where the user group CSS does not work](https://meta.discourse.org/t/there-are-some-places-where-the-user-group-css-does-not-work/319960)

<div class="topic-metadata">

**Author:** [@sheng\_hualuo](https://meta.discourse.org/u/sheng_hualuo)\
**Replies:** 1\
**Last updated:** [January 3, 2025, 12:16am UTC](https://meta.discourse.org/t/there-are-some-places-where-the-user-group-css-does-not-work/319960 "2025-01-03T00:16:29Z")

</div>

I used user group css to assign an avatar box to each user group, and I found that some places the css worked, and some places didn’t css //\<----------------------------头像框定义开始----------------------------\> $avatar-f…

---

## [User customizable theme components (how-to)](https://meta.discourse.org/t/user-customizable-theme-components-how-to/345240)

<div class="topic-metadata">

**Author:** [@elmuerte](https://meta.discourse.org/u/elmuerte)\
**Replies:** 0\
**Last updated:** [January 2, 2025, 11:55am UTC](https://meta.discourse.org/t/user-customizable-theme-components-how-to/345240 "2025-01-02T11:55:25Z")

</div>

On my forum I wanted give the users some customization options on the default theme. I wanted to give them the option to set a background for the forum. I could make different themes for this, but that is quite a bit of …

---

## [How to move the avatar\_template inside the topic body](https://meta.discourse.org/t/how-to-move-the-avatar-template-inside-the-topic-body/344096)

<div class="topic-metadata">

**Author:** [@katruki](https://meta.discourse.org/u/katruki)\
**Replies:** 4\
**Last updated:** [December 29, 2024, 9:18pm UTC](https://meta.discourse.org/t/how-to-move-the-avatar-template-inside-the-topic-body/344096 "2024-12-29T21:18:11Z")

</div>

Hello, I am currently making a custom theme for a community of mine. I am trying to move the user avatar inside the topic body (I’ll post screen-shots for what it currently looks like vs what I am looking for). I am usin…

---

## [Share two practical functions: 1. Add the original poster or other logo to the topic or post, 2. Add custom content color to the homepage](https://meta.discourse.org/t/share-two-practical-functions-1-add-the-original-poster-or-other-logo-to-the-topic-or-post-2-add-custom-content-color-to-the-homepage/344385)

<div class="topic-metadata">

**Author:** [@zaihuigengmei](https://meta.discourse.org/u/zaihuigengmei)\
**Replies:** 2\
**Last updated:** [December 26, 2024, 9:54am UTC](https://meta.discourse.org/t/share-two-practical-functions-1-add-the-original-poster-or-other-logo-to-the-topic-or-post-2-add-custom-content-color-to-the-homepage/344385 "2024-12-26T09:54:24Z")

</div>

First add a theme component name customization and make sure to enable your theme or all themes as shown Add the first person to add the original poster or other logo in the topic or post Add the css code as follows …

---

## [Frequent categories -json loading error](https://meta.discourse.org/t/frequent-categories-json-loading-error/336541)

<div class="topic-metadata">

**Author:** [@Steve\_John](https://meta.discourse.org/u/Steve_John)\
**Replies:** 1\
**Last updated:** [November 18, 2024, 2:48pm UTC](https://meta.discourse.org/t/frequent-categories-json-loading-error/336541 "2024-11-18T14:48:02Z")

</div>

We have customized our Discourse theme and implemented JavaScript for UI behavior to show different text for buttons based on different navigation menu. However, we frequently encounter an error when switching between ca…

---

## [Is pagination impossible or just hard?](https://meta.discourse.org/t/is-pagination-impossible-or-just-hard/231838)

<div class="topic-metadata">

**Author:** [@piffy](https://meta.discourse.org/u/piffy)\
**Replies:** 21\
**Last updated:** [December 23, 2024, 12:07am UTC](https://meta.discourse.org/t/is-pagination-impossible-or-just-hard/231838 "2024-12-23T00:07:56Z")

</div>

I made the switch to Discourse recently and my community is torn on whether they like the infinite scroll or not. Some users like it, some don’t care, some treat it like an existential threat to the community. Based on o…

---

## [How to check if a post starts with an image and get that image](https://meta.discourse.org/t/how-to-check-if-a-post-starts-with-an-image-and-get-that-image/343684)

<div class="topic-metadata">

**Author:** [@Sean\_Li](https://meta.discourse.org/u/Sean_Li)\
**Replies:** 0\
**Last updated:** [December 20, 2024, 7:21pm UTC](https://meta.discourse.org/t/how-to-check-if-a-post-starts-with-an-image-and-get-that-image/343684 "2024-12-20T19:21:42Z")

</div>

I am running into 2 related problems at the moment in my theme component, Check if the post starts with an image, I am currently getting the post content using document.querySelector(“.topic-post:first-child .cooked”) …

---

## [iOS PWA, App - Pull To Refresh](https://meta.discourse.org/t/ios-pwa-app-pull-to-refresh/343262)

<div class="topic-metadata">

**Author:** [@Don](https://meta.discourse.org/u/Don)\
**Replies:** 8\
**Last updated:** [December 20, 2024, 3:27pm UTC](https://meta.discourse.org/t/ios-pwa-app-pull-to-refresh/343262 "2024-12-20T15:27:47Z")

</div>

Hello :wave: A new theme component to make more friendly the iOS PWA usage. Pull to refresh is a huge gap in iOS PWA. This theme component tries to fill this gap. I tested it on iOS 15.8 and this is why I create this t…

---

## [Support for proposed plug-in](https://meta.discourse.org/t/support-for-proposed-plug-in/189948)

<div class="topic-metadata">

**Author:** [@prose11](https://meta.discourse.org/u/prose11)\
**Replies:** 4\
**Last updated:** [December 19, 2024, 8:02pm UTC](https://meta.discourse.org/t/support-for-proposed-plug-in/189948 "2024-12-19T20:02:54Z")

</div>

Hello, I attempted to email Discourse support for my inquiry and was directed here. Below is the message I sent, please let me know if any additional information is required: I am a member of the MakerDAO community (for…

---

## [Upgrading Discourse to Ember 4](https://meta.discourse.org/t/upgrading-discourse-to-ember-4/225032)

<div class="topic-metadata">

**Author:** [@Johani](https://meta.discourse.org/u/Johani)\
**Replies:** 19\
**Last updated:** [December 19, 2024, 6:30pm UTC](https://meta.discourse.org/t/upgrading-discourse-to-ember-4/225032 "2024-12-19T18:30:33Z")

</div>

We want to update the Ember version used in Discourse. Right now, we’re on 3.15, and we’d like to get to 4.1 We’ve set a goal to finish this work by the end of this year. Please note that this topic is a roadmap, and a…

---

## [OAUTH flow to Integrate the discourse community account with the third party CRM tool where it can create tickets of community](https://meta.discourse.org/t/oauth-flow-to-integrate-the-discourse-community-account-with-the-third-party-crm-tool-where-it-can-create-tickets-of-community/343092)

<div class="topic-metadata">

**Author:** [@kekafel](https://meta.discourse.org/u/kekafel)\
**Replies:** 2\
**Last updated:** [December 18, 2024, 6:45am UTC](https://meta.discourse.org/t/oauth-flow-to-integrate-the-discourse-community-account-with-the-third-party-crm-tool-where-it-can-create-tickets-of-community/343092 "2024-12-18T06:45:01Z")

</div>

I want to integrate discourse Account with the CRM tool that I have where what I want is as follows :- User can add their Discourse community account in my tool using his discourse loginId and password . Discourse sh…

---

## [Can discourse be used entirely through the APIs to build a flutter app?](https://meta.discourse.org/t/can-discourse-be-used-entirely-through-the-apis-to-build-a-flutter-app/342554)

<div class="topic-metadata">

**Author:** [@SubStrider](https://meta.discourse.org/u/SubStrider)\
**Replies:** 18\
**Last updated:** [December 16, 2024, 2:00pm UTC](https://meta.discourse.org/t/can-discourse-be-used-entirely-through-the-apis-to-build-a-flutter-app/342554 "2024-12-16T14:00:36Z")

</div>

I see the APIs are quite extensive but before I dive into this direction, I wanted to know if it is possible to build a custom flutter app entirely using the APIs that discourse supports? We are currently on xenforo and…

---

## [Plugin Working in Local Instance, Breaking on Deployed](https://meta.discourse.org/t/plugin-working-in-local-instance-breaking-on-deployed/342293)

<div class="topic-metadata">

**Author:** [@jafab](https://meta.discourse.org/u/jafab)\
**Replies:** 2\
**Last updated:** [December 14, 2024, 8:59am UTC](https://meta.discourse.org/t/plugin-working-in-local-instance-breaking-on-deployed/342293 "2024-12-14T08:59:03Z")

</div>

Hello! This is primarily a question for @angus but if anyone has any suggestions I would be very grateful! I had been working on a variation of @angus Topic Custom Field Plugin and had it working as desired in my locall…

---

## [Add more info to Shared link](https://meta.discourse.org/t/add-more-info-to-shared-link/342348)

<div class="topic-metadata">

**Author:** [@Sean\_Li](https://meta.discourse.org/u/Sean_Li)\
**Replies:** 21\
**Last updated:** [December 13, 2024, 9:43pm UTC](https://meta.discourse.org/t/add-more-info-to-shared-link/342348 "2024-12-13T21:43:43Z")

</div>

How would I go about adding more info like a post title to the share link? For example: instead of clicking share and having the text box having: “https://discourse.example.com/xxxxxx” have: “Title of post: AI gener…

---

## [F NAV - Theme component concept](https://meta.discourse.org/t/f-nav-theme-component-concept/340226)

<div class="topic-metadata">

**Author:** [@Don](https://meta.discourse.org/u/Don)\
**Replies:** 22\
**Last updated:** [December 13, 2024, 2:25pm UTC](https://meta.discourse.org/t/f-nav-theme-component-concept/340226 "2024-12-13T14:25:13Z")

</div>

Hello :waving\_hand: I am working on a new theme component based on Discourse Tab Bar for Mobile. The theme component adds the ability to use functions to the tabs. These function now can be hamburger, notifications, se…

---

## [Adding a custom scrollbar above the create post button](https://meta.discourse.org/t/adding-a-custom-scrollbar-above-the-create-post-button/341331)

<div class="topic-metadata">

**Author:** [@MihirR](https://meta.discourse.org/u/MihirR)\
**Replies:** 0\
**Last updated:** [December 9, 2024, 9:28am UTC](https://meta.discourse.org/t/adding-a-custom-scrollbar-above-the-create-post-button/341331 "2024-12-09T09:28:00Z")

</div>

I’m looking to add a custom scrollbar just above the “Create a post” button, and I want it to be specific to the topics page. Is there a way to implement this, or should I make the changes directly in the repository? I’m…

---

## [Help with Translation/displaying labels correctly](https://meta.discourse.org/t/help-with-translation-displaying-labels-correctly/341250)

<div class="topic-metadata">

**Author:** [@martyn\_thomas](https://meta.discourse.org/u/martyn_thomas)\
**Replies:** 2\
**Last updated:** [December 8, 2024, 11:49pm UTC](https://meta.discourse.org/t/help-with-translation-displaying-labels-correctly/341250 "2024-12-08T23:49:45Z")

</div>

I’m trying to create a theme component that adds underlining to the composer toolbar. I’m able to get it working, the button label is working, however when it’s used it returns \[en.composer.underline\_text\] not the exp…

---

## [Search by link](https://meta.discourse.org/t/search-by-link/339422)

<div class="topic-metadata">

**Author:** [@David\_Ghost](https://meta.discourse.org/u/David_Ghost)\
**Replies:** 7\
**Last updated:** [December 7, 2024, 8:16pm UTC](https://meta.discourse.org/t/search-by-link/339422 "2024-12-07T20:16:53Z")

</div>

Hi, I’m writing a python script that needs to search in my forum and check if a external link exists in the content of my forum threads. The problem is: i checked manually, it finds some results of posts containing the…

---

## [Problem with Google auth due to bundle install](https://meta.discourse.org/t/problem-with-google-auth-due-to-bundle-install/340475)

<div class="topic-metadata">

**Author:** [@pfaffman](https://meta.discourse.org/u/pfaffman)\
**Replies:** 9\
**Last updated:** [December 6, 2024, 10:16am UTC](https://meta.discourse.org/t/problem-with-google-auth-due-to-bundle-install/340475 "2024-12-06T10:16:59Z")

</div>

I think this is a bug, but I don’t understand how I could be the first one to complain and Google auths work on Meta. . . I have several sites that use Google auth set in ENV variables in the YML file. They’ve worked fo…

---

## [Triggering account creation/login on external service when a user logs in on discourse](https://meta.discourse.org/t/triggering-account-creation-login-on-external-service-when-a-user-logs-in-on-discourse/340359)

<div class="topic-metadata">

**Author:** [@Chris\_Dawson](https://meta.discourse.org/u/Chris_Dawson)\
**Replies:** 11\
**Last updated:** [December 6, 2024, 1:23am UTC](https://meta.discourse.org/t/triggering-account-creation-login-on-external-service-when-a-user-logs-in-on-discourse/340359 "2024-12-06T01:23:23Z")

</div>

I have a JS plugin on my discourse site. This JS uses pocketbase to store data. Pocketbase is a “serverless” sqlite service that permits me to store files and JSON blobs. Pocketbase has a terrific JWT-based auth system s…

---

## [Creating a plugin to override QUERY\_RESULT\_MAX\_LIMIT](https://meta.discourse.org/t/creating-a-plugin-to-override-query-result-max-limit/241942)

<div class="topic-metadata">

**Author:** [@tkrunning](https://meta.discourse.org/u/tkrunning)\
**Replies:** 6\
**Last updated:** [December 5, 2024, 9:24pm UTC](https://meta.discourse.org/t/creating-a-plugin-to-override-query-result-max-limit/241942 "2024-12-05T21:24:31Z")

</div>

I naively attempted to create a plugin (which I’ve never done, other than running through the plugin tutorial some years ago) to override the limits set in the DataExplorer module, however I’m not getting it to work. Am…

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

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