Skip to content

Tiptap bidirectional markdown support is now available #2196

@nomorsug

Description

@nomorsug

Pre-submission checklist

  • I have searched for existing open or closed issue reports with the same feature request.

Description

This request addresses https://community.vikunja.io/t/markdown-as-first-class-citizen/2975

Tiptap now offers bidirectional Markdown support https://tiptap.dev/docs/editor/markdown (@tiptap/markdown) and this can help solve all the issue for the discussion above without much pain and different editor.

I understand the reasoning for it being removed before and my suggestion now is if implemented to be optional feature in under General Settings. If you enable Markdown support you get bidirectional markdown preserving the syntax regardless if you edit it with a CalDAV client that expect markdown or the web editor. Both will be happy and able to render.

Brief summary of the current major issues

Senario 1 - Creating Description with the web UI editor (tiptap)

Workflow: Create a task in the WebUI -> Sync it with CalDAV / fetch from api (they expect markdown)

Example content in the WebUI:

Image

Raw result:

<h1>Welcome to the Markdown Demo</h1><p>This demo showcases <strong>bidirectional</strong> markdown support in Tiptap with extended features.</p><h2>Features</h2><ul><li><p><strong>Bold text</strong> and <em>italic text</em></p></li><li><p><code>inline code</code> and code blocks</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" href="https://tiptap.dev">Links</a></p></li><li><p>Lists and more!</p></li></ul><p></p>

What the CalDAV client (JTXboard) sees after sync:

Image

Senario 2 - Creating task from CalDAV client

Workflow: Create a task on a CalDAV client (JTXboard) -> Sync it with Vikunja

Example rendered markdown content for the new task in JTXboard:

Image

Raw markdown content:

# Welcome to the Markdown Demo

This demo showcases **bidirectional** markdown support in Tiptap with extended features.

## Features

- **Bold text** and *italic text*
- `inline code` and code blocks
- [Links](https://tiptap.dev)
- Lists and more!

What you see in Vikunja WebUI after sync:

Image

Which alternatives did you consider using instead?

None exist

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions