Summary
This documentation topic covers writing a feature request in Discourse: A Step-by-Step Guide.
Step 1: Before You Start
So, you have great idea for a Discourse feature? That’s fantastic! Here’s how you can share it with the team and community effectively. Before submitting a feature request, please take a moment to search existing discussions to see if your idea has already been suggested or implemented. You can do this in a couple of ways
- Looking in the Feature category
- By clicking on the icon on the upper right corner of the page to pull up the search. You can use advanced filters to filter by category and tag.
- Look through topics with the tags pr-welcome - A PR is a pull request on GitHub - a way for developers to introduce new code to a project.
- Look though topics with the completed tag
- Look in the Plugin category
If your feature suggestion is already listed, you can support it by voting for it to make their requests more prominent, liking it, and replying with additional ideas or use cases, to further communicate its usefulness as to why the feature should be added.
Can’t find any mention of your idea? You may create a feature request.
Step 2: The basics
Title
It is important that topic titles are informative, but at the same time not too long. The scope of the request should be easily identifiable at a glance.
Category
When creating a new topic, please select the Feature category.
Tag
Tags are used to group and classify features therefore, in order to keep requests organised, tagging your topic appropriately is very helpful for tracking purposes. For example, everything related to the chat plugin is kept together under one tag.
Step 3: Writing your request
Writing a good feature request is important, it helps the Discourse team quickly identify areas that could need improvement.
Remember, when creating a feature request, you are trying to pitch your idea and convince people that your idea for a feature is well-founded. Explain why you want your feature to be added to: the community, yourself and the Team.
In the body of your topic, concisely state the feature you are requesting. Be specific and descriptive, avoid being vague or open-ended.
Provide context and explanation
Provide context and explanation for your feature request.
- A clear description of the feature you are requesting
- Include the problem or use cases of your current struggle and how your feature would solve it
- Any relevant background information or research you’ve done
Provide Examples and Screenshots (Optional)
If applicable, provide examples, mock-ups or screenshots to help illustrate your feature request so that others can easily visualise your idea.
Engage with the Community
Once you’ve created your feature request, engage with members by replying to questions and feedback. This will help the chances of your request being considered.
What to Expect Next
After submitting your feature request, it will be reviewed by the community and the Discourse Team. You can expect:
- Feedback and discussion from the community
- A response from Discourse staff indicating whether your request is feasible and under consideration
- Potential implementation of your feature request in a future update
Want to ensure your feature gets made?
In some cases, feature requests may not be suitable for core. You can read how feature decisions are made. If you’re unable to develop the feature yourself, there are still ways to increase the chances of it being made.
Become a discourse.org customer
If you would like to fund development by hosting sites with us – we always prioritize customer requests in our development timeline – that is one way to get it in faster. Enterprise customers can request custom features (usually in the form of a plugin) by the core team at an hourly rate.
Sponsor a “pr-welcome” task
We have a comprehensive list of pr-welcome topics. These are tasks we’d love to see completed, but currently don’t have the bandwidth to work on ourselves. Sponsoring someone to work on these tasks is a great way to get involved and any contribution to Discourse is greatly appreciated.
Offer paid work on the Marketplace
If there’s a plugin you need that’s critical to your business, advertise a paid assignment on the Marketplace. Provide as many details as possible, including screenshots and budget. You might also find freelancers offering standardized microservices like “one-time install” or “personalized theme.”
Overall
General do’s and don’ts
Do
- Keep your request concise and focused on a single feature
- Avoid making assumptions about implementation or technical details
- Show willingness to compromise and adapt your idea based on community feedback
Don’ts
- Include more than one feature per topic
- Leave others questioning the scope of your request
FAQs
Q: What if I don’t have time to create a detailed feature request?
A: If in the moment you aren’t able to create a detailed request, think over what you want to say and try again later. This ensures you put forward your best case resulting in a higher chance that others will support your request and it will will get added.
Q: Where should I post my feature request?
A: Use the appropriate category - feature requests should go in the Feature category.
Q: What if I am unsure what tag to use for my request?
A: Although tags match plugin and theme component names for ease of use, a member of the Team or a Regular will append an appropriate tag to your topic if t is left blank.
Do be respectful and open minded in your request. Avoid using the feature request to express frustration. Any inappropriate language or behaviour can result in your request being delayed or ignored.
Additional Resources
- Feature - Discourse Meta
- Plugin - Discourse Meta
- How do I write a good feature request? - Meta Stack Exchange
- How do we decide what goes into each release of Discourse?
- Discourse pricing | Discourse - Civilized Discussion
- Marketplace - Discourse Meta
- Releases - Discourse Meta
- Upcoming feature to-do list
- Topics tagged planned
- Extras - Discourse Meta