Few clarifications on Discourse


(Sumedha Nuwan) #1

Hi all,

We are having several clarifications with Discourse Community edition hosted on our platform;

  1. How do we can rebuild Discourse from our own repertory with our own changes? What is the best practice?
  2. Rebuild will deploy the latest codes base even it’s on Beta1, Beta2 etc, so, how do we overcome this situation? do you have any method to retrieve the code from the stable branch?
  3. Is there a way to remove rate limits for a specific API key? Our system sends out invitations for topics for large number of participants. This fails because of rate limits.

Thank you !


(Felix Freiberger) #2

Please don’t do that. Maintaining a Discourse fork is a lot of ongoing work and should only be done in very exceptional circumstances. The proper way to modify Discourse is this:

  • For changes that are only for you, or only for a subset of Discourse users, develop a theme component (best for anything that’s purely CSS or client-side JavaScript) or write a plugin (for anything else). Both are way easier to maintain, requiring changes only when Discourse updates the markup or the plugin API in a way that breaks your extension.
  • For improvements that make sense for everyone, set up a development environment, make your improvements and submit them as a pull request so they can be included in core :slight_smile:

You can set which branch you want to deploy from in app.yml. The default is tests-passed which contains the latest commits, you can dial that back to beta or stable if you want. Please note that stable doesn’t mean there are less bugs, it just means that you’ll get changes in larger chunks. Also, keep in mind that downgrades aren’t supported – if you go back to a less-frequently updated branch, you may only rebuild once that branch has been advanced.

This depends a bit on which rate limit you’re running into, but in general, rate limits can only be adjusted globally, not per API key. For more information, have a look at this topic: