Default components / Structure
Heading
Renders ATX headings from H1 through H6, including the optional H1 divider.
What it renders
Live Flutter preview
Starting the Flutter widget
Rendering this component with gpt_markdown…
This is the real GptMarkdown Flutter widget, rendered with the exact Markdown input shown here.
Markdown input
1# Release notes
2
3## The important partDefault behavior
Runtime behavior
A hash count from one to six selects the level. The default H1 divider is part of the default heading widget.
Accessibility note
Use heading levels in order so assistive technology can understand the document outline.
Theming & styling
Theme layering guideHeadingStyle is the component's appearance surface. Set only the values you need; style-sheet values merge field-by-field with the active theme and package defaults.
| Style class | Available fields |
|---|---|
| HeadingStyle | textStyle · padding · showDivider · dividerColor · dividerThickness · dividerPadding |
1GptMarkdown(
2 markdown,
3 styleSheet: const GptMarkdownStyleSheet(
4 heading: HeadingStyle(
5 textStyle: TextStyle(letterSpacing: -0.4),
6 showDivider: false,
7 padding: EdgeInsets.only(top: 10, bottom: 6),
8 ),
9 ),
10)App-wide or scoped theme
1GptMarkdownThemeData(
2 brightness: Brightness.light,
3 styleSheet: const GptMarkdownStyleSheet(
4 heading: HeadingStyle(
5 // Set only the values your app needs.
6 ),
7 ),
8)Builders & callbacks
headingBuilder
Widget Function(BuildContext context, int level, Widget content, HeadingStyle style)
Use this only when the default widget structure is no longer the right shape. The resolved style or configuration is passed where applicable.
Safely override the default
A custom component list replaces a default list entirely. Put your matching component first, then append the package defaults so every other Markdown feature continues to render.
1// Passing components replaces its defaults. Prepend to override matching syntax,
2// then keep every built-in component after it.
3GptMarkdown(
4 markdown,
5 components: [
6 MyHTagOverride(),
7 ...MarkdownComponent.globalComponents,
8 ],
9)