explaingit

discourse/discourse

📈 Trending47,045RubyAudience · pm founderComplexity · 4/5ActiveLicenseSetup · hard

TLDR

Open-source forum platform for building self-hosted communities with modern features like real-time chat, trust levels, and AI plugins, a free alternative to Reddit or Facebook Groups.

Mindmap

mindmap
  root((Discourse))
    What it does
      Threaded discussions
      Real-time chat
      User trust levels
      Full-text search
    Features
      Email notifications
      Voting and reactions
      Plugin system
      Theme customization
    Tech stack
      Ruby on Rails
      PostgreSQL
      Redis
      Ember.js
    Use cases
      Product support forums
      Open-source communities
      Learning platforms
      Members-only clubs
    Audience
      Community builders
      Self-hosted admins
      Open-source projects

Things people build with this

USE CASE 1

Build a self-hosted support forum for your software product or service.

USE CASE 2

Create a discussion space for an open-source project where contributors and users can collaborate.

USE CASE 3

Launch an online learning community or course platform with moderated discussions.

USE CASE 4

Set up a members-only club or private community with full control over data and moderation.

Tech stack

Ruby on RailsPostgreSQLRedisEmber.jsJavaScript

Getting it running

Difficulty · hard Time to first run · 1day+

Requires PostgreSQL, Redis, Ruby/Rails environment setup, and multiple services running together; no single-command bootstrap.

Use freely for any purpose, including commercial use, as long as you comply with the open-source license terms and maintain attribution.

In plain English

Discourse is an open-source forum and community discussion platform, a modern alternative to old-style internet bulletin boards or mailing lists, designed to feel more like a contemporary web application than a 1990s message board. The problem it addresses is that most community discussion tools are either clunky and outdated, hosted by someone else with no control over your data, or require expensive licensing. Discourse is completely free, fully open-source, and designed to be self-hosted on your own server. The platform supports threaded discussion topics, real-time chat (like Slack), user trust levels that automatically promote reliable contributors and restrict spammers, email notifications and digests, a plugin and theme system for customization, and AI-powered features through an optional plugin. Content is structured around topics (threads) and replies, with a voting and reaction system. The search is full-text and fast. Administrators can manage categories, permissions, user groups, and site settings through a web interface without writing code. The backend is a Ruby on Rails API server that stores data in PostgreSQL, uses Redis for caching and real-time features, and serves a JavaScript single-page application built with the Ember.js framework. You would use Discourse when you want to build a community around a product, project, or topic, for example, a support forum for software users, a discussion space for an open-source project, an online learning community, or a members-only club. It is a good fit when you want the look and functionality of modern social software but want to run it yourself rather than relying on third-party platforms like Reddit or Facebook Groups, and when you need full control over moderation, data, and customization.

Copy-paste prompts

Prompt 1
How do I install and set up Discourse on my own server? What are the system requirements?
Prompt 2
How can I customize the look and feel of my Discourse forum using themes and plugins?
Prompt 3
How do I configure user trust levels in Discourse to automatically promote good contributors and restrict spammers?
Prompt 4
What are the best practices for moderating a Discourse community and managing user groups and permissions?
Prompt 5
How do I integrate AI features into my Discourse forum using the optional AI plugin?
Open on GitHub → Explain another repo

Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.