"fancy_title":"Discourse has a new Markdown Parser!",
"slug":"discourse-has-a-new-markdown-parser",
"posts_count":1,
"reply_count":0,
"highest_post_number":1,
"image_url":null,
"created_at":"2013-08-24T18:08:06.063Z",
"last_posted_at":"2013-08-24T18:08:06.259Z",
"bumped":true,
"bumped_at":"2015-03-09T04:54:43.977Z",
"unseen":false,
"linked_post_number":1,
"pinned":false,
"unpinned":null,
"excerpt":"...0 lines of Javascript code! An inline example Let's say you want to replace all occurances of \"evil trout\" with a link that says \"EVIL TROUT IS AWESOME\": Discourse.Dialect.on(\"register\", function(event) {...",
"visible":true,
"closed":false,
"archived":false,
"bookmarked":null,
"liked":null,
"views":2645,
"like_count":21,
"has_summary":false,
"archetype":"regular",
"last_poster_username":"eviltrout",
"category_id":7,
"pinned_globally":false,
"posters":[
{
"extras":"latest single",
"description":"Original Poster, Most Recent Poster",
"user_id":19
}
]
},
{
"id":21792,
"title":"Adding custom emoji/emoticons via a plugin",
"fancy_title":"Adding custom emoji/emoticons via a plugin",
"excerpt":"...plugin that executes the following method to register a new emoji: Discourse.Dialect.registerEmoji('trout', 'http://cdn.eviltrout.com/images/trout-square.jpg'); Here's a sample plugin that adds a :trout: e...",
"visible":true,
"closed":false,
"archived":false,
"bookmarked":null,
"liked":null,
"views":1260,
"like_count":25,
"has_summary":false,
"archetype":"regular",
"last_poster_username":"cpradio",
"category_id":22,
"pinned_globally":false,
"posters":[
{
"extras":null,
"description":"Original Poster",
"user_id":19
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":8617
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":12662
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":6626
},
{
"extras":"latest",
"description":"Most Recent Poster",
"user_id":8300
}
]
},
{
"id":3071,
"title":"Would it be possible to make Slug localizable?",
"fancy_title":"Would it be possible to make Slug localizable?",
"excerpt":"...e inserted by plugins. ## Usage If you handlebars template has: ```handlebars {{plugin-outlet \"evil-trout\"}} ``` Then any handlebars files you create in the `connectors/evil-trout` directory will automatic...",
"visible":true,
"closed":false,
"archived":false,
"bookmarked":null,
"liked":null,
"views":1224,
"like_count":81,
"has_summary":false,
"archetype":"regular",
"last_poster_username":"snjqi188",
"category_id":7,
"pinned_globally":false,
"posters":[
{
"extras":null,
"description":"Original Poster",
"user_id":14446
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":14474
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":14514
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":32
},
{
"extras":"latest",
"description":"Most Recent Poster",
"user_id":14448
}
]
},
{
"id":31001,
"title":"Beginner's Guide to Creating Discourse Plugins Part 2: Plugin Outlets",
"fancy_title":"Beginner’s Guide to Creating Discourse Plugins Part 2: Plugin Outlets",
"excerpt":"...nectors/ < outlet name > in it. For example, if your handlebars template has: {{plugin-outlet \"evil-trout\"}} Then any handlebars files you create in the connectors/evil-trout directory will automatically b...",
"visible":true,
"closed":false,
"archived":false,
"bookmarked":null,
"liked":null,
"views":220,
"like_count":16,
"has_summary":false,
"archetype":"regular",
"last_poster_username":"eviltrout",
"category_id":10,
"pinned_globally":false,
"posters":[
{
"extras":"latest single",
"description":"Original Poster, Most Recent Poster",
"user_id":19
}
]
},
{
"id":29176,
"title":"How can I add some custom html to the bottom of the categories page?",
"fancy_title":"How can I add some custom html to the bottom of the categories page?",
"excerpt":"...e inserted by plugins. ## Usage If you handlebars template has: ```handlebars {{plugin-outlet \"evil-trout\"}} ``` Then any handlebars files you create in the `connectors/evil-trout` directory will automatic...",
"visible":true,
"closed":false,
"archived":false,
"bookmarked":null,
"liked":null,
"views":190,
"like_count":8,
"has_summary":false,
"archetype":"regular",
"last_poster_username":"sam",
"category_id":6,
"pinned_globally":false,
"posters":[
{
"extras":null,
"description":"Original Poster",
"user_id":14657
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":6626
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":8617
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":14353
},
{
"extras":"latest",
"description":"Most Recent Poster",
"user_id":1
}
]
},
{
"id":26192,
"title":"403 when embedding a Digital Ocean droplet",
"fancy_title":"403 when embedding a Digital Ocean droplet",
"excerpt":"Yes I am Robin as well as Evil Trout smile :smile: If you followed those instructions and are getting access errors, you might want to d...",
"excerpt":"I have seem some of your testing 'stuff' (evil trout's actually). And it looks like a HUUUUUUUUGGGE time sink (ice pick to the eyeballs). but...I believ...",
"visible":true,
"closed":false,
"archived":false,
"bookmarked":null,
"liked":null,
"views":141,
"like_count":2,
"has_summary":false,
"archetype":"regular",
"last_poster_username":"Frank",
"category_id":2,
"pinned_globally":false,
"posters":[
{
"extras":"latest",
"description":"Original Poster, Most Recent Poster",
"user_id":9931
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":1995
}
]
},
{
"id":13534,
"title":"Blogging Platforms, Ghost, and Discourse",
"fancy_title":"Blogging Platforms, Ghost, and Discourse",
"slug":"blogging-platforms-ghost-and-discourse",
"posts_count":18,
"reply_count":13,
"highest_post_number":18,
"image_url":null,
"created_at":"2014-03-08T15:46:35.174Z",
"last_posted_at":"2014-03-26T18:25:45.895Z",
"bumped":true,
"bumped_at":"2014-03-26T18:25:45.895Z",
"unseen":false,
"linked_post_number":1,
"pinned":false,
"unpinned":null,
"excerpt":"...urse, do you mean that the blog comments for Ghost will be driven by Discourse, similar to the Evil Trout blog ? What about using Discourse as the blog platform itself, not as the comment engine at the end...",
"visible":true,
"closed":false,
"archived":false,
"bookmarked":null,
"liked":null,
"views":2182,
"like_count":17,
"has_summary":false,
"archetype":"regular",
"last_poster_username":"codetricity",
"category_id":17,
"pinned_globally":false,
"posters":[
{
"extras":"latest",
"description":"Original Poster, Most Recent Poster",
"user_id":8364
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":4949
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":14
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":32
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":8385
}
]
},
{
"id":4859,
"title":"All of the site functions based on ajax?",
"fancy_title":"All of the site functions based on ajax?",
"slug":"all-of-the-site-functions-based-on-ajax",
"posts_count":28,
"reply_count":20,
"highest_post_number":28,
"image_url":null,
"created_at":"2013-03-18T08:59:46.135Z",
"last_posted_at":"2013-10-18T20:22:30.677Z",
"bumped":true,
"bumped_at":"2013-10-18T20:22:30.677Z",
"unseen":false,
"linked_post_number":21,
"pinned":false,
"unpinned":null,
"excerpt":"please see evil trouts blog post http://eviltrout.com/2013/02/27/adding-to-discourse-part-1.html",
"visible":true,
"closed":false,
"archived":false,
"bookmarked":null,
"liked":null,
"views":1629,
"like_count":17,
"has_summary":false,
"archetype":"regular",
"last_poster_username":"jasonwhat",
"category_id":17,
"pinned_globally":false,
"posters":[
{
"extras":null,
"description":"Original Poster",
"user_id":3520
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":3493
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":2395
},
{
"extras":null,
"description":"Frequent Poster",
"user_id":2477
},
{
"extras":"latest",
"description":"Most Recent Poster",
"user_id":7301
}
]
},
{
"id":7220,
"title":"Javascript dependencies",
"fancy_title":"Javascript dependencies",
"slug":"javascript-dependencies",
"posts_count":8,
"reply_count":5,
"highest_post_number":8,
"image_url":null,
"created_at":"2013-06-06T11:11:18.522Z",
"last_posted_at":"2013-06-07T18:43:51.449Z",
"bumped":true,
"bumped_at":"2013-06-07T18:43:51.449Z",
"unseen":false,
"linked_post_number":3,
"pinned":false,
"unpinned":null,
"excerpt":"...ould be in vendor directory of one of the gems Ahh I need to look at Gemfile Ahh I need to use Evil Trouts bundle open handlebars trick. I am completely against this new best practice, its inconsistent wit...",
"cooked": "<p>I've gotten vagrant up and running with a development environment but it's taking forever to load.<\/p>\n\n<p>For example <a href=\"http://192.168.10.200:3000/\" rel=\"nofollow\">http://192.168.10.200:3000/<\/a> takes tens of seconds to load.<\/p>\n\n<p>I'm running the whole stack on a new rMBP with OS X 10.8.2.<\/p>\n\n<p>Any ideas of what I've done wrong? Or is this just a function of being on the bleeding edge?<\/p>\n\n<p>Thanks,<\/p>\n\n<p>-bd<\/p>",
"post_number": 1,
"post_type": 1,
"updated_at": "2013-02-07T17:46:57.469Z",
"like_count": 0,
"reply_count": 1,
"reply_to_post_number": null,
"quote_count": 0,
"avg_time": 24,
"incoming_link_count": 4422,
"reads": 327,
"score": 21978.4,
"yours": false,
"topic_id": 2179,
"topic_slug": "development-mode-super-slow",
"display_username": "Bill Dudney",
"primary_group_name": null,
"version": 2,
"can_edit": false,
"can_delete": false,
"can_recover": false,
"user_title": null,
"actions_summary": [
{
"id": 2,
"count": 0,
"hidden": false,
"can_act": false
},
{
"id": 3,
"count": 0,
"hidden": false,
"can_act": false
},
{
"id": 4,
"count": 0,
"hidden": false,
"can_act": false
},
{
"id": 5,
"count": 0,
"hidden": true,
"can_act": false
},
{
"id": 6,
"count": 0,
"hidden": false,
"can_act": false
},
{
"id": 7,
"count": 0,
"hidden": false,
"can_act": false
},
{
"id": 8,
"count": 0,
"hidden": false,
"can_act": false
}
],
"moderator": false,
"admin": false,
"staff": false,
"user_id": 1828,
"hidden": false,
"hidden_reason_id": null,
"trust_level": 1,
"deleted_at": null,
"user_deleted": false,
"edit_reason": null,
"can_view_edit_history": true,
"wiki": false,
"blurb": "I've gotten vagrant up and running with a development environment but it's taking forever to load. For example http://192.168.10.200:3000/ takes..."
"cooked": "<p>So you want to set up Discourse on Ubuntu to hack on and develop with?<\/p>\n\n<p>We'll assume that you don't have Ruby/Rails/Postgre/Redis installed on your Ubuntu system. Let's begin!<\/p>\n\n<p><em>Although this guide assumes that you are using Ubuntu, but the set-up instructions will work fine for any Debian based ditribution.<\/em><\/p>\n\n<p><em>(If you want to install Discourse for production use, see <a href=\"https://github.com/discourse/discourse/blob/master/docs/INSTALL.md\">our install guide<\/a>)<\/em><\/p>\n\n<h2>Install Discourse Dependencies<\/h2>\n\n<p>Run <a href=\"https://github.com/techAPJ/install-rails/blob/master/linux\">this script<\/a> in terminal, to setup Rails development environment:<\/p>\n\n<pre><code>bash <(wget -qO- https://raw.githubusercontent.com/techAPJ/install-rails/master/linux)<\/code><\/pre>\n\n<p><div class=\"lightbox-wrapper\"><a href=\"//meta-s3-cdn.global.ssl.fastly.net/original/2X/9/9df737ab44032f2f671ac15513456bc668314591.png\" class=\"lightbox\" title=\"linux_script.png\"><img src=\"//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/9/9df737ab44032f2f671ac15513456bc668314591_1_690x189.png\" width=\"690\" height=\"189\"><div class=\"meta\">\n<span class=\"filename\">linux_script.png<\/span><span class=\"informations\">770x211 9.62 KB<\/span><span class=\"expand\"><\/span>\n<\/div><\/a><\/div> <\/p>\n\n<p>This will install following new packages on your system:<\/p>\n\n<ul>\n<li><a href=\"http://git-scm.com/\">Git<\/a><\/li>\n<li><a href=\"https://github.com/sstephenson/rbenv\">rbenv<\/a><\/li>\n<li><a href=\"https://github.com/sstephenson/ruby-build\">ruby-build<\/a><\/li>\n<li>\n<a href=\"https://www.ruby-lang.org/\">Ruby<\/a> (stable)<\/li>\n<li><a href=\"http://rubyonrails.org/\">Rails<\/a><\/li>\n<li><a href=\"http://www.postgresql.org/\">PostgreSQL<\/a><\/li>\n<li><a href=\"https://sqlite.org/\">SQLite<\/a><\/li>\n<li><a href=\"http://redis.io/\">Redis<\/a><\/li>\n<li><a href=\"http://bundler.io/\">Bundler<\/a><\/li>\n<li><a href=\"http://www.imagemagick.org/\">ImageMagick<\/a><\/li>\n<\/ul>\n\n<p>Install Phantomjs:<\/p>\n\n<p>For 32 bit macine:<\/p>\n\n<pre><code>cd /usr/local/share\nsudo wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-linux-i686.tar.bz2\nsudo tar xvf phantomjs-1.9.8-linux-i686.tar.bz2\nsudo rm phantomjs-1.9.8-linux-i686.tar.bz2\nsudo ln -s /usr/local/share/phantomjs-1.9.8-linux-i686/bin/phantomjs /usr/local/bin/phantomjs\ncd<\/code><\/pre>\n\n<p>For 64 bit machine:<\/p>\n\n<pre><code>cd /usr/local/share\nsudo wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-linux-x86_64.tar.bz2\nsudo tar xvf phantomjs-1.9.8-linux-x86_64.tar.bz2\nsudo rm phantomjs-1.9.8-linux-x86_64.tar.bz2\nsudo ln -s /usr/local/share/phantomjs-1.9.8-linux-x86_64/bin/phantomjs /usr/local/bin/phantomjs\ncd<\/code><\/pre>\n\n<p><div class=\"lightbox-wrapper\"><a href=\"//meta-s3-cdn.global.ssl.fastly.net/original/2X/0/0781669e092e0bdc29f8ec1830193503e884fd56.png\" class=\"lightbox\" title=\"phantomjs.png\"><img src=\"//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/0/0781669e092e0bdc29f8ec1830193503e884fd56_1_690x121.png\" width=\"690\" height=\"121\"><div class=\"meta\">\n<span class=\"filename\">phantomjs.png<\/span><span class=\"informations\">969x171 10.1 KB<\/span><span class=\"expand\"><\/span>\n<\/div><\/a><\/div> <\/p>\n\n<p><em>In case you have any of this package pre-installed and don't want to run entire script, see the <a href=\"https://github.com/techAPJ/install-rails/blob/master/linux\">script<\/a> and pick the packages you don't have currently installed. The script is fine-tuned for Discourse, and includes all the packages required for Discourse installation.<\/em><\/p>\n\n<p>Now that we have installed Discourse dependencies, let's move on to install Discourse itself.<\/p>\n\n<h2>Clone Discourse<\/h2>\n\n<p>Clone the Discourse repository in <code>~/discourse<\/code> folder:<\/p>\n\n<pre><code>git clone https://github.com/discourse/discourse.git ~/discourse<\/code><\/pre>\n\n<p><div class=
"blurb": "So you want to set up Discourse on Ubuntu to hack on and develop with? We'll assume that you don't have Ruby/Rails/Postgre/Redis installed on your Ubuntu system..."
"cooked": "<p>So you want to set up Discourse on Mac OS X to hack on and develop with?<\/p>\n\n<p>We'll assume that you don't have Ruby/Rails/Postgre/Redis installed on your Mac. Let's begin!<\/p>\n\n<p><em>(If you want to install Discourse for production use, see <a href=\"https://github.com/discourse/discourse/blob/master/docs/INSTALL.md\">our install guide<\/a>)<\/em><\/p>\n\n<h2>Install Discourse Dependencies<\/h2>\n\n<p>Run <a href=\"https://github.com/techAPJ/install-rails/blob/master/mac\">this script<\/a> in terminal, to setup Rails development environment:<\/p>\n\n<pre><code>bash <(curl -s https://raw.githubusercontent.com/techAPJ/install-rails/master/mac)<\/code><\/pre>\n\n<p>This script will install following new packages on your system:<\/p>\n\n<ul>\n<li><a href=\"http://git-scm.com/\">Git<\/a><\/li>\n<li><a href=\"https://github.com/sstephenson/rbenv\">rbenv<\/a><\/li>\n<li><a href=\"https://github.com/sstephenson/ruby-build\">ruby-build<\/a><\/li>\n<li>\n<a href=\"https://www.ruby-lang.org/\">Ruby<\/a> (latest stable)<\/li>\n<li><a href=\"http://rubyonrails.org/\">Rails<\/a><\/li>\n<li><a href=\"http://www.postgresql.org/\">PostgreSQL<\/a><\/li>\n<li><a href=\"http://redis.io/\">Redis<\/a><\/li>\n<li><a href=\"http://bundler.io/\">Bundler<\/a><\/li>\n<li><a href=\"http://www.imagemagick.org/\">ImageMagick<\/a><\/li>\n<li><a href=\"http://phantomjs.org/\">PhantomJS<\/a><\/li>\n<\/ul>\n\n<p><em>In case you have any of this package pre-installed and don't want to run entire script, see the <a href=\"https://github.com/techAPJ/install-rails/blob/master/mac\">script<\/a> and pick the packages you don't have currently installed. The script is fine-tuned for Discourse, and includes all the packages required for Discourse installation.<\/em><\/p>\n\n<p>Now that we have installed Discourse dependencies, let's move on to install Discourse itself.<\/p>\n\n<h2>Clone Discourse<\/h2>\n\n<p>Clone the Discourse repository in <code>~/discourse<\/code> folder:<\/p>\n\n<pre><code>git clone https://github.com/discourse/discourse.git ~/discourse<\/code><\/pre>\n\n<p><img src=\"//discourse-meta.s3-us-west-1.amazonaws.com/original/2X/e/ed047a1077c7d3af966434d093fbf9ddd3db51d9.png\" width=\"571\" height=\"142\"> <\/p>\n\n<p><code>~<\/code> indicates home folder, so Discourse source code will be available in your home folder.<\/p>\n\n<h2>Setup Database<\/h2>\n\n<p>Open psql prompt:<\/p>\n\n<pre><code>psql postgres<\/code><\/pre>\n\n<p><img src=\"//discourse-meta.s3-us-west-1.amazonaws.com/original/2X/0/0a31b7a439991beedf32a974abd423cd7a774b76.png\" width=\"574\" height=\"148\"> <\/p>\n\n<p>Create <strong>discourse_development<\/strong> and <strong>discourse_test<\/strong> database with your <em><a href=\"http://forums.macrumors.com/showthread.php?t=898855\">account short name<\/a><\/em> specified as role:<\/p>\n\n<pre><code>CREATE DATABASE discourse_development WITH OWNER techapj ENCODING 'UTF8' TEMPLATE template0;\nCREATE DATABASE discourse_test WITH OWNER techapj ENCODING 'UTF8' TEMPLATE template0;<\/code><\/pre>\n\n<p>Note that in above commands I specified the role as <em>techapj<\/em>, this means that my <a href=\"http://forums.macrumors.com/showthread.php?t=898855\">short name<\/a> is <em>techapj<\/em>, <strong>replace this with your own <a href=\"http://forums.macrumors.com/showthread.php?t=898855\">short name<\/a>.<\/strong><\/p>\n\n<p><img src=\"//discourse-meta.s3-us-west-1.amazonaws.com/original/2X/9/9e976ace87a952fe60879c522234082fd7166eaf.png\" width=\"573\" height=\"235\"> <\/p>\n\n<p>Exit psql prompt by pressing <kbd>control<\/kbd><kbd>d<\/kbd><\/p>\n\n<p>Now access psql prompt in <strong>discourse_development<\/strong> database as <em>your short name<\/em> user:<\/p>\n\n<pre><code>psql -d discourse_development -U techapj -h localhost<\/code><\/pre>\n\n<p>Run following commands, separately:<\/p>\n\n<pre><code>CREATE EXTENSION pg_trgm;\nCREATE EXTENSION hstore;<\/code><\/pre>\n\n<p><img src=\"//discourse-meta.s3-us-west-1.amazonaws.com/original/2X/9/9bfda41f4f5b020735cd641a4922e0696ad148a0.png\" widt
"blurb": "So you want to set up Discourse on Mac OS X to hack on and develop with? We'll assume that you don't have Ruby/Rails/Postgre/Redis installed on your Mac. Let's be..."
"cooked": "<p>Continuing the discussion from <a href=\"https://meta.discourse.org/t/log-of-setting-up-docker-in-virtualbox/12111/7\">Log of setting up Docker in Virtualbox<\/a>:<\/p>\n\n<aside class=\"quote\" data-post=\"7\" data-topic=\"12111\" data-full=\"true\"><div class=\"title\">\n<div class=\"quote-controls\"><\/div>\n<img alt=\"\" width=\"20\" height=\"20\" src=\"//discourse-cdn.global.ssl.fastly.net/meta/user_avatar/meta.discourse.org/riking/40/40212_1.png\" class=\"avatar\">riking:<\/div>\n<blockquote><p>I'm actually loving having the VM set up - whenever I need to test something, the server was savestated with it running, so all I need to do is go to <code>/admin/docker<\/code>, refresh once, hit upgrade, and test it out.<\/p><\/blockquote><\/aside>\n\n<p>What is the preferred development environment these days? I have Vagrant up and running as recommended in <a href=\"http://blog.discourse.org/2013/04/discourse-as-your-first-rails-app/\" rel=\"nofollow\">Discourse as Your First Rails App<\/a> and <a href=\"https://github.com/discourse/discourse/blob/master/docs/VAGRANT.md\" rel=\"nofollow\">Discourse Vagrant Developer Guide<\/a>, but much of the recent discussion has been about <a href=\"https://github.com/discourse/discourse_docker\" rel=\"nofollow\">Discourse Docker<\/a> (which I freely admit I haven't really looked at for lack of time).<\/p>\n\n<p>For development purposes, should I carry on using Vagrant for the time being? Or should I be setting up a VM with Ubuntu and then installing Docker and Discourse Docker?<\/p>\n\n<p>(As a related side issue, my current production environment was built by following the <a href=\"https://github.com/discourse/discourse/blob/master/docs/INSTALL-ubuntu.md\" rel=\"nofollow\">Discourse Install Guide<\/a>. Would it be prudent to switch that over to Docker at some point as well? Meaning, is version 1.0 likely to recommend Docker instead of a raw installation? This question deserves a topic of its own in some other category, but it seems best to see what people have to say about development environments before launching a second, better-informed discussion about production environments.)<\/p>\n\n<p>So, for development, Vagrant or Docker?<\/p>",
"blurb": "...ed to do is go to /admin/docker , refresh once, hit upgrade, and test it out. What is the preferred development environment these days? I have Vagrant up and running as recommended in Discourse as Your F..."
"cooked": "<p>Is there any trick to getting a dev instance to send email? I managed to get a copy set up and running, but when I sign up, the email never gets sent. I have sendmail installed and I don't see any errors in the app log, but I also don't see any activity in the system mail log. Any hints as to what to look at?<\/p>",
"description": "This category is for topics related to hacking on Discourse: submitting pull requests, configuring development environments, coding conventions, and so forth.",
"description_text": "This category is for topics related to hacking on Discourse: submitting pull requests, configuring development environments, coding conventions, and so forth.",