Flutter Markdown

pub package Build Status

A markdown renderer for Flutter. It supports the original format, but no inline html.

Getting Started

Using the Markdown widget is simple, just pass in the source markdown as a string:

Markdown(data: markdownSource);

If you do not want the padding or scrolling behavior, use the MarkdownBody instead:

MarkdownBody(data: markdownSource);

By default, Markdown uses the formatting from the current material design theme, but it's possible to create your own custom styling. Use the MarkdownStyle class to pass in your own style. If you don't want to use Markdown outside of material design, use the MarkdownRaw class.

Image support

The Img tag only supports the following image locations:

  • From the network: Use a URL prefixed by either http:// or https://.

  • From local files on the device: Use an absolute path to the file, for example by concatenating the file name with the path returned by a known storage location, such as those provided by the path_provider plugin.

  • From image locations referring to bundled assets: Use an asset name prefixed by resource:. like resource:assets/image.png.

Libraries

flutter_markdown
A library to render markdown formatted text.

Dart

VM

dart:ffi
Foreign Function Interface for interoperability with the C programming language. [...]

Web

dart:html
HTML elements and other resources for web-based applications that need to interact with the browser and the DOM (Document Object Model). [...]
dart:js
Low-level support for interoperating with JavaScript. [...]
dart:js_util
Utility methods to efficiently manipulate typed JSInterop objects in cases where the name to call is not known at runtime. You should only use these methods when the same effect cannot be achieved with @JS annotations. These methods would be extension methods on JSObject if Dart supported extension methods.