MARKETPLACE
PLUGINS
MARKDOWN PRO MOBILE
Markdown Pro Mobile logo

Markdown Pro Mobile

Published September 2026
   •    Updated this month

Plugin details

Beautiful Markdown for your mobile app Turn plain Markdown into readable, styled content with Markdown Pro. Display AI responses, help articles, notes, and more in your Bubble native mobile app.
What you can do
  • Display headings, bold and italic text, lists, links, quotes, code blocks, and tables.
  • Update content as text arrives from your existing AI integration.
  • Match your app with controls for fonts, colors, spacing, code blocks, and more.
  • Choose whether links open automatically, trigger a workflow, or stay disabled.
  • Let users select text and scroll through longer content.
Connect a text value, choose your styles, and let the plugin handle the display.
Try it yourself
Open the demo
Explore the Bubble editor
Please note
This is a read-only Markdown renderer for Bubble native mobile apps. It does not generate AI responses or connect to an AI provider. Test it in a rebuilt simulated device or development build; the editor preview does not show the full native rendering.

$40

One time  •  Or  $8/mo

stars   •   0 ratings
0 installs  
This plugin does not collect or track your personal data.

Platform

Native mobile

Contributor details

Bubble Axis logo
Bubble Axis
Joined 2023   •   37 Plugins
View contributor profile

Instructions

Get started 1. Install the plugin in your Bubble native mobile app.
2. Add the Markdown element to your mobile view and give it enough width and height. Long content scrolls inside the element.
3. Set the Markdown field to text from an input, your database, or an API response.
4. Use the styling fields to match your app. Start with font size, text color, background color, and padding.
5. Rebuild your simulated device or development build after installing the plugin, then test there. No API key or device permission is required by this plugin.
Make a live preview
Add a multiline input and set the element's Markdown field to that input's value. The preview updates when the value changes.
Display a streamed AI response
Use your own integration to receive the response. Wait for the element's Ready event before running its actions.
1. Run Start stream with a unique Stream ID for this response.
2. Run Append stream chunk for each new piece of text. Use the same Stream ID and sequence numbers 1, 2, 3, and so on.
3. Run Finish stream with the same Stream ID when the response is complete.
If your integration sends the whole response so far, use Replace stream snapshot instead of appending it. Pass decoded text, not raw streaming event data. Keep the Markdown field unchanged during action-driven streaming: changing it replaces the content and stops that stream.
Choose link behavior
  • Workflow only: use the Link pressed event and Last link URL state to handle navigation yourself.
  • Open automatically: open HTTP and HTTPS links using the device's URL handler.
  • Disabled: display links without responding to taps.
Advanced styles JSON — optional
Use the normal styling fields first. Advanced styles JSON lets you group several overrides in one place.
How to use it
1. Select the Markdown element in Bubble.
2. Find the Advanced styles JSON field.
3. Copy the JSON below, from the first opening brace to the final closing brace, into that field.
4. Change the values and view the result in your native preview.
JSON example
{
 "paragraph": {
   "fontSize": 16,
   "lineHeight": 24,
   "color": "#20242c"
 },
 "h1": {
   "fontSize": 28,
   "lineHeight": 36,
   "color": "#35209b"
 },
 "link": {
   "color": "#35209b",
   "underline": true
 },
 "codeBlock": {
   "backgroundColor": "#f1f3f5",
   "borderRadius": 12,
   "padding": 16
 },
 "taskList": {
   "checkedColor": "#35209b",
   "checkmarkColor": "#ffffff",
   "checkedStrikethrough": true
 }
}
What this example changes
The paragraph block styles body text. h1 styles the largest heading. link controls link appearance. codeBlock styles fenced code blocks. taskList styles completed checkboxes; it does not make them editable.
Rules to remember
  • Use exact, case-sensitive keys: fontSize, not font_size or font-size.
  • Use double quotes around keys and text values. Numbers and true/false have no quotes. Do not add comments or trailing commas.
  • Sizes are numbers in logical pixels: use 16, not "16px".
  • Include only the settings you want to change. Other settings keep the normal field values.
  • JSON overrides matching regular fields. If paragraph.fontSize is set here, changing the regular Font size field will not override it.
  • To return to normal field styling, remove that key or clear the Advanced styles JSON field.
  • This is a specific style format, not CSS. Do not wrap the object in a styles or markdownStyle key.
  • Background color for the whole element, padding around the whole element, and link behavior still use their regular Bubble fields.
  • Changing a font size does not automatically recalculate its line height inside JSON; set both when needed.
If the JSON does not work
Display the element's Style error message or handle its Style error event. One invalid key or value causes the entire JSON override to be ignored; regular styling stays active. Maximum JSON length: 32,768 characters.
If something goes wrong
Check Error code and Error message. If the native library is missing, update the installed plugin and rebuild. Use Clear to empty the content, or Set Markdown to replace it. Cancel stream keeps the text received so far; cancel your external AI request separately if needed.

Types

This plugin can be found under the following types:
Element   •   Event   •   Action

Categories

This plugin can be found under the following categories:
Data (things)   •   AI   •   Chat   •   Productivity   •   Blog   •   Visual Elements

Resources

Support contact
Tutorial

Rating and reviews

No reviews yet

This plugin has not received any reviews.
Bubble