Discourse is a free, open source community platforms project written in Ruby and released under GPL-2.0. It has 47,852 GitHub stars, 9,017 forks and 221 open issues, and was last pushed 5 hours ago. On this registry it ranks #1 of 14 tracked projects in Community Platforms, with 5 head-to-head comparisons available. It gained 23 stars over the last 6 tracked days.

Discourse — Cultivate vibrant online communities with ease

What is Discourse?

Discourse is a free, open-source community discussion platform, built in Ruby on Rails and licensed under GPL-2.0, for organisations and communities that want complete control over how and where their forum is run rather than renting a hosted service.

What it is

Discourse is a platform for community discussion, described by its maintainers as the online home for a community. It is a 100 percent open-source project that has been battle-tested for over a decade and continues to evolve. The back end is a Ruby on Rails application that responds to requests RESTfully in JSON, and the front end is an Ember.js application that communicates with that Rails API. PostgreSQL serves as the main data store, and Redis is used as a cache and for transient data. The project lives in the Ruby and JavaScript ecosystem, spanning the Rails, Ember, PostgreSQL and Redis topic areas, and it is developed in the open at github.com/discourse/discourse, with support community discussion hosted at meta.discourse.org.

The concrete problem it solves is ownership of community infrastructure. Long-running forums built on hosted or proprietary discussion services leave the operator dependent on someone else's pricing, roadmap and data handling. Discourse replaces that arrangement with software the operator can run on their own infrastructure, so topics, users and history remain under the operator's control. It also consolidates what would otherwise be several separate tools: threaded discussion, real-time chat, customisable theming and an extensible plugin system all ship in the same platform, which means a community does not need to bolt a chat service and a theme layer onto a basic forum package.

Key capabilities

  • Discussion topics for structured, long-form conversation, persisted in PostgreSQL.
  • Built-in real-time chat alongside the threaded forum.
  • A theming system with an ever-growing selection of official and community themes.
  • A plugin system, including Discourse AI for chatbot functionality and the Data Explorer plugin for SQL analysis.
  • A RESTful JSON API served by the Rails back end, which the Ember.js front end consumes.
  • Redis-backed caching and transient data handling.
  • Support for the latest stable releases of Safari, Chrome, Edge and Firefox, plus iPadOS, iOS and Android tablets and phones, with Safari on iOS 16.4+ targeted.

Who uses it and how

  • Communities that self-host Discourse on their own infrastructure when they want control of where the site runs.
  • Teams that would rather skip setup, maintenance and server management and take official Discourse hosting instead.
  • Operators migrating off hosted or proprietary forum services who want their discussion history to live in their own PostgreSQL database.
  • Community teams extending the base forum with plugins, adding chatbots through Discourse AI or SQL analysis through the Data Explorer.
  • Contributors working against the public repository and the Discourse support community at meta.discourse.org; contributions require reading CONTRIBUTING.MD and signing the Electronic Discourse Forums Contribution License Agreement.

Getting started

For production use, the README points to the Discourse Install Guide at docs/INSTALL.md, and for official hosting it points to discourse.org/pricing. For development, the project publishes setup guides for Docker, a Dev Container in VS Code (the recommended route), CLI, macOS, Ubuntu/Debian and Windows, requiring at minimum Ruby 3.4+, PostgreSQL 15 and Redis 7.

How it compares

No competing products are named in the facts supplied for this registry entry, so Discourse stands alone here among similar tools. The only comparison the material supports is internal to the project: self-hosting on your own infrastructure against official Discourse hosting, which removes the setup, maintenance and server management burden at a cost set out at discourse.org/pricing, versus the zero licence cost of running the open-source code yourself.

When to use it — and when not to

Self-hosters must operate a full stack, not a single binary: Ruby 3.4+ with Rails, PostgreSQL 15 as the main data store, Redis 7 for cache and transient data, and a container or dev-container workflow for setup. Anyone unwilling to run and maintain that infrastructure, and unwilling to pay for official hosting, should not pick it. Two further signals are worth weighing: the repository carries 221 open issues, and the README does not state a release schedule or point to release notes, so operators who need a predictable upgrade cadence should confirm that separately before committing.

project readme (upstream, from github) — read inline

The online home for your community.

github-readme

You can self-host Discourse on your own infrastructure. But if you'd rather skip the setup, maintenance, and server management, we offer official Discourse hosting.

👉 Learn more about Discourse hosting

Discourse is a 100% open-source community platform for those who want complete control over how and where their site is run.

Our platform has been battle-tested for over a decade and continues to evolve to meet users’ needs for a powerful community platform.

With Discourse, you can:

  • 💬 Create discussion topics to foster meaningful conversations.

  • ⚡️ Connect in real-time with built-in chat.

  • 🎨 Customize your experience with an ever-growing selection of official and community themes.

  • 🤖 Enhance your community with plugins, from chatbots powered by Discourse AI to advanced tools like SQL analysis with the Data Explorer plugin.

To learn more, visit discourse.org and join our support community at meta.discourse.org.

Here are just a few of the incredible communities using Discourse:

discourse-communities

👉 Discover more communities using Discourse

Development

To get your environment set up, follow one of the setup guides:

Before you get started, ensure you have the following minimum versions: Ruby 3.4+, PostgreSQL 15, Redis 7.

For more information, check out the Developer Documentation.

Setting up Discourse

If you want to set up a Discourse forum for production use, see our Discourse Install Guide.

If you're looking for official hosting, see discourse.org/pricing.

Requirements

Discourse supports the latest, stable releases of all major browsers and platforms:

Browsers Tablets Phones
Apple Safari iPadOS iOS
Google Chrome Android Android
Microsoft Edge
Mozilla Firefox

Additionally, we aim to support Safari on iOS 16.4+.

Built With

  • Ruby on Rails — Our back end API is a Rails app. It responds to requests RESTfully in JSON.
  • Ember.js — Our front end is an Ember.js app that communicates with the Rails API.
  • PostgreSQL — Our main data store is in Postgres.
  • Redis — We use Redis as a cache and for transient data.
  • BrowserStack — We use BrowserStack to test on real devices and browsers.

Plus lots of Ruby Gems, a complete list of which is at /main/Gemfile.

Contributing

Build Status

Discourse is 100% free and open source. We encourage and support an active, healthy community that accepts contributions from the public – including you!

Before contributing to Discourse:

  1. Please read the complete mission statements on discourse.org. Yes we actually believe this stuff; you should too.
  2. Read and sign the Electronic Discourse Forums Contribution License Agreement.
  3. Dig into CONTRIBUTING.MD, which covers submitting bugs, requesting new features, preparing your code for a pull request, etc.
  4. Always strive to collaborate with mutual respect.
  5. Not sure what to work on? We've got some ideas.

We look forward to seeing your pull requests!

Security

We take security very seriously at Discourse; all our code is 100% open source and peer reviewed. Please read our security guide for an overview of security measures in Discourse, or if you wish to report a security issue.

Security fixes are listed in the release notes for each version.

The Discourse Team

The original Discourse code contributors can be found in AUTHORS.MD. For a complete list of the many individuals that contributed to the design and implementation of Discourse, please refer to the official Discourse blog and GitHub's list of contributors.

Copyright / License

Copyright 2014 - 2026 Civilized Discourse Construction Kit, Inc.

Licensed under the GNU General Public License Version 2.0 (or later); you may not use this work except in compliance with the License. You may obtain a copy of the License in the LICENSE file, or at:

https://www.gnu.org/licenses/old-licenses/gpl-2.0.txt

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Discourse logo and “Discourse Forum” ®, Civilized Discourse Construction Kit, Inc.

Accessibility

To guide our ongoing effort to build accessible software we follow the W3C’s Web Content Accessibility Guidelines (WCAG). If you'd like to report an accessibility issue that makes it difficult for you to use Discourse, email [email protected]. For more information visit discourse.org/accessibility.

Dedication

Discourse is built with love, Internet style.

For over a decade, our amazing community has helped shape Discourse into what it is today. Your support, feedback, and contributions have been invaluable in making Discourse a powerful and versatile platform.

We’re deeply grateful for every feature request, bug report, and discussion that has driven Discourse forward. Thank you for being a part of this journey—we couldn’t have done it without you!

Frequently asked questions

Is Discourse free to use?

Discourse is open source under the GPL-2.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does Discourse do?

Cultivate vibrant online communities with ease

What is Discourse written in?

Discourse is primarily written in Ruby. Its source is publicly available at https://github.com/discourse/discourse, and it has 47,852 GitHub stars.