Discourse Basic Editor

My goal is to have all the building blocks in place to allow for editor experimentation in Discourse.

I have discussed this with @david, @tgxworld and @martin in the past, we have a lot of stuff in progress at the moment and can not get started quite yet. That said … our rough plans are:

  1. enough extensibility to allow easy replacement of the editor with a contenteditable composer
  2. experiments around trivial components that add minimal extra interesting functionality
    • A component that “inlines” images and leaves everything else alone in markdown (super useful for mobile composer)
    • A component that syntax highlights markdown
  3. perform experiments around full feature editors such as CKEditor 5 (on my list to contact Wiktor once we are ready)

The approach of starting from scratch with a brand new frontend is not advisable and will be something that will be a nightmare to support long term. It may be a short term hack that buys you a few months, but long term it is wasted effort.

15 Likes

That sounds great! Looking forward to it! :grinning: :+1:

trying to replace the editor the way I tried to do it in this plugin is also a nightmare :ghost: .

I disagree with this. There is much to be gained from this kind of work. I recently had a chat with @renato who is also working on something similar. The other thing is this: Discourse would make for a great headless CMS! I recently built this news website with nextjs and a strapi backend:

It also has a Discourse forum attached now. So why still use strapi? The strapi backend does nothing different than a Discourse forum. It just saves markdown and has a permission system. So my next step will be to get rid of strapi entirely and just use an articles category in Discourse.
I think there is a huge potential here to serve this headless CMS usecase and make it more user friendly.
Anway! Thank you very much for your comment and your work on Discourse! :heart:

8 Likes

I have heard this request a few times in recent months. It is certainly an interesting problem.

The big gap at the moment would be API stability guarantees. We do not provide them so you are tied to a stable release and potential drama when upgrading stable to a new stable.

Another long term project once we clear a few other ones may be creating a stable and guaranteed API. It is certainly something I think about but it is not on the roadmap atm.

Yeah I hear you, we are coupled way too tightly at the moment to TEXTAREA, we need an abstraction layer with 2 implementations.

It is a very big project to undertake but I expect to get started in the next year or so.

Thanks so much for all the experimentation, we very much love seeing this out there.

10 Likes

Hello @spirobel
My site can’t load and get erorr later install plugin

Uncaught Error: Could not find module discourse/lib/raw-templates imported from discourse/plugins/DiscourseBasicEditor/initializers/discourse-basic-editor

1 Like

Who can help me, please?

1 Like

Hello Sam, I have discourse running and am beginning to build a community on it. Having a WYSIWYG editor would be truly amazing.

3 Likes

Hello! This plugin is not working
I have tried disabling all plugins. I also tried disabling themed components. Did not help.

1 Like

That seems to be a similar error to the one @huynhthai824 experienced a short time ago. I’ll mark this plugin as broken until @spirobel has a chance to weigh in. :+1:

7 Likes

yes please do so! This was just an experiment and the knowledge gathered from this will be used in my other work as mentioned here:

Thanks to everyone for your interest and suggestions! :grinning: :+1:

7 Likes

The idea was very good, I would like to see a similar solution in the near future.

6 Likes

Is this project dead? Anything new take its place? We have a mostly elderly population in our forum and I’m realizing markdown is foreign to them :slight_smile:

5 Likes

Markdown is good for programmers, normal people need something different … I also think so …

I started this as a side project to see if it is possible. it certainly is. But I have since gotten older and wiser (hopefully :sweat_smile:). There are better ways to spend free time than trying to swim against the tide of a large open source project. :laughing:

5 Likes

Against? No, it is all about surfing top of that tide wave :rofl: [1]

(Okey… footnotes aren’t inlined here any more)


  1. and because of that we end users aren’t limited by Automattic at WordPress-world :rofl: ↩︎

2 Likes

True visionaries are leaders and yes often anachronisms have difficult with forward momentum.

I remember DOS word processors when you had to know text colours and highlighted colour for bold. underline, italics etc…

It took awhile for WYSIWYG. Now a word proc without it would be frowned upon. It is curious why in parts of the Web were still using archiac methods.

I wrote about this problem here:

We will get to adding first class support for ContentEditable and other types of composers, it is just going to take a while longer.

8 Likes

What I need is not WYSIWYG, but a editor that make text and images occupy separate areas, rather than being mixed together. Just like Twitter, Mastodon or other social media’s doing.

test3

I use Discourse for recording my life, and it will be present with lots of text and images. I think markdown is not good to use, because when uploading some media, you must wait for finish, For example:

Then your idea is disrupted. Next time you want to record something, you will recall this scene, and your passion disappears.

So is there some plugin can solve this problem?

6 Likes

This looks great, but just seeing it’s marked as broken. Is that so or is it stable?

2 Likes

It certainly doesn’t work on a current version. And the repo got its last update 3 years ago…

1 Like

It has been tagged as broken since December 2022

2 Likes

I tried to fix a few things (there are a lot :smile:), but It somehow works:
Will see if I can fix it properly. :slight_smile:

11 Likes