最近更新的页面
index
Documentation about extending Discourse with plugins, themes, and theme components, working with ...
Theme Developer Tutorial: 7. Wrapping up
This tutorial has been a whistle-stop tour through the process of creating a Discourse theme and ...
Theme Developer Tutorial: 6. Using the JS API
In the last couple of chapters, we've explored how to use the JavaScript API to render content in...
Theme Developer Tutorial: 5. Building and using components
In the last chapter, we explored how you can render Glimmer Components into plugin outlets, and m...
Theme Developer Tutorial: 4. Using Outlets to insert and replace content
Discourse uses the Ember JS Framework for its user interface. On top of Ember, Discourse provides...
Theme Developer Tutorial: 3. CSS in Themes
Technically, Discourse uses SCSS to author its stylesheets. However, we're increasingly moving to...
Theme Developer Tutorial: 2. Creating a remote theme
In the last chapter, we created a basic theme via the Discourse admin interface. This works well ...
Using the AI bot via the Discourse API
Overview Discourse AI exposes an admin/API endpoint for streaming an AI Agent reply over a raw ch...
Overview
The Discourse AI plugin ships a Ruby CLI under plugins/discourse-ai/evals that exercises AI feat...
Discourse Public Data Dump
Given the advent of AI and the need for large datasets on local development machines, we have pul...
Create custom Automations
:information_source: This is a draft, and may need some extra work. Vocabulary trigger: represent...
Things to consider before deciding to white-label the Discourse Mobile apps
Since we released the iOS and Android apps a number of people have asked expressed interest in wh...
Controlling site settings with themes
Themeable site settings allow a theme (not components) to override a small subset of core site se...
Adding preview screenshots to Discourse themes
:bookmark: This guide explains how to add preview screenshots to your Discourse theme to showcase...
Use the `navigation_menu` query parameter to preview the sidebar or other options
If you are working on a theme for an existing site and want to preview how it will look with the ...
Install a new language for Highlight.JS via a theme component
I've just added a hook to our HighlightJS code so now you can use the plugin API to add a custom ...
Theme modifiers: A brief introduction
As themes become more ambitious, we've been looking for ways to allow them to manipulate core ser...
Change font sizes in your themes
The simplest way to change the font size of your entire community would be to override the defaul...
Minimizing Maintenance on Theme Customizations
Discourse is highly customizable, enabling you to modify almost any aspect of its appearance thro...
End-to-end system testing for themes and theme components
Writing automated tests for themes is an important part of the theme development process which ca...