Skip to content

[FEATURE] Request for ProseMirror JSON visualization support #1499

@everMitta

Description

@everMitta

Describe your feature request
Hi! 👋

I’d like to propose adding support for rendering ProseMirror JSON documents in Flutter by converting them to HTML and passing them through the existing flutter_html rendering pipeline.

Rather than modifying the core library, this feature will be implemented as a lightweight, official-style extension named flutter_html_prosemirror.

It will allow developers using editors such as [Tiptap] to visualize their documents directly in Flutter.

Example usage:

import 'package:flutter_html_prosemirror/flutter_html_prosemirror.dart';

final doc = {
  "type": "doc",
  "content": [
    {
      "type": "heading",
      "attrs": {"level": 2},
      "content": [{"type": "text", "text": "ProseMirror Example"}]
    },
    {
      "type": "paragraph",
      "content": [
        {"type": "text", "text": "Rendered with "},
        {"type": "text", "text": "Html.fromProseMirror()", "marks": [{"type": "bold"}]}
      ]
    }
  ]
};

Html.fromProseMirror(doc: doc);

Internally, the extension just converts the JSON document into a valid HTML string and then reuses the existing Html(data: ...) widget for rendering.

No new dependencies are introduced, and it integrates cleanly with the current extension architecture.

Additional context

The extension is designed as a first-party style package (flutter_html_prosemirror).

It could also be released as a third-party package if not considered for official inclusion.

I'll be working on that.

Before opening a pull request, I’d love to confirm whether you’d be open to reviewing this

Thanks for your time and for maintaining such a great package!

A picture of a cute animal (not mandatory but encouraged)

🦙 Here’s are some llamas, I'm Peruvian sorry 🌿
Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions