Diagrams that fit phones
Pele changes a diagram's layout to fit the space instead of shrinking it. Give it the available width and, below 640 pixels, a left-to-right flowchart turns to run top to bottom, so its text stays readable.
The problem
A wide flowchart drawn for a laptop is about 1,000 pixels across. On a 375-pixel phone, a renderer that scales the picture to fit shrinks the text to around a third of its size. That's what Mermaid.js does by default.
What Pele does instead
render(text, { maxWidth: container.clientWidth })
With maxWidth, Pele may wrap labels, tighten spacing, or turn the diagram to run downward. You can tune or switch off the turning:
| Option | Default | What it does |
|---|---|---|
maxWidth |
none | The width you have, in pixels |
autoDirection |
true |
Let left-to-right layouts run top-to-bottom when narrow |
directionBreakpoint |
640 |
The width below which that happens |
responsive |
true |
Set false for a fixed pixel size |
Some layouts still need more room than they get; those are scaled down as a last resort, and mount() then adds zoom buttons so readers can look closer.
Let mount() handle it
import { mount } from 'pele'
mount(el, text) // watches el's width and redraws when it changes
See it in the phone demo: drag the phone narrower and watch the flowchart turn.