Wikilinks support for Discourse

Description

Discourse is a highly flexible forum tool that works great for multi user collaboration.

It includes backlinks — where linking to a post will show a backlink on that post — which is a common feature of #tools-for-thought (TFT).

To make it even better, we’d like to use a [[wikilinks]] double bracket syntax to link to new and existing pages.

User Impact

Who would want to use this and why?

Use a format and feature familiar from TFT systems to be able to use Discourse as an interlinked digital garden of notes.

TFT systems today have weak multi player systems, and also don’t have the concept of comments / discussions as separate from long form content. Using Discourse brings in multiplayer and commenting, @-mentions, and more.

Features

Support [[wikilinks]] syntax to link to existing pages, with a way to automatically search. Like the tag selection interface that pops up when you type a # in the editor:

Linking to a page that doesn’t exist yet should also be supported.

Skills Required

There is an initial write up on the bounties board. https://github.com/fission-suite/bounties/issues/7

There is a discussion on the Discourse community forum that seems to indicate that this could initially be done at the theme component layer:

So CSS/JavaScript to start, with familiarity with the Discourse theming system being helpful.

Discourse itself is written in Ruby on Rails and Ember.js, so deeper customizations would need those skills.

4 Likes

I’ve written up a bounty that pretty much says the same thing https://github.com/fission-suite/bounties/issues/7

2 Likes

Glad I randomly found this! I’d love to see it implemented.

1 Like

Glad I’ve checked my spam folder. Considering that I open notifications from here it is weird that it had ended up in the spam folder.

I’ll read up on this in the bounties. You may know that I am aming to go meta, and provide constellations that let people solve these class of problems

1 Like

What counts as a ‘page’ here?

The real power of wikilinks comes from supporting interwiki prefixes. Support [[es:w:]] and [[wd:]] and [[wookie:]] and you’re really going places.

1 Like

[[wikilinks]] as brought in from #tools-for-thought more than “traditional” wikis.

Discourse does a good job of using OEmbed / Onebox support for all sorts of content being pasted in as links.

The goal for us is to have a multi player tool for thought which is subtly different than OG wikis.

But Discourse is very flexible — inter wiki links sound cool!

1 Like

One thing to figure out is that Discourse has a 15 character minimum for titles. This sucks for short words to be used as wikilinks. Can this be overridden?

1 Like

I’m actually surprised to read this. In talking to @expede and @Quinn, they mentioned that the lack of backlinks in Discourse is one of the primary drivers keeping them in Roam. Are there examples of posts within this Discourse listing backlinks?

Backlinks are supported in Discourse, but Wikilinks are not.

Also, the way backlinks are themed / integrated is not as useful.

See this event post (which is transcluded / embedded here):

(And which will now have a backlink to this post added!) Here’s a screenshot:

The two links with chain emoji are backlinks.

Looks like I haven’t posted about it publicly, but an upgraded display / theme of backlinks (probably in a sidebar) would help improve the experience. And of course, since wikilinks aren’t supported, no “inline” backlinks.

2 Likes

Indeed, we should use the correct terminology: we want wikilinks in particular :wink: