Skip to content
QuireKit Markdown
Developer docs
Streaming Markdown · MIT

As the words arrive,
the page takes shape.

Bring AI answers, documents and ideas into your application. Incremental Lezer parsing connects late references and custom components as the content unfolds.

Workspace preview · not yet on npm

  1. 01Source
  2. 02Syntax
  3. 03References
  4. 04Interface
04 LAYERSMARKDOWN → INTERFACE

Streaming, throughout

Append, stop and resolve late references

Vue · React · Core

One parser, multiple integrations

Make it your own

HTML, custom syntax and components

MIT

Open-source parser and reading components

BUILD WITH MARKDOWN

One core. More ways to express.

From a document to a live AI answer. Bring content and interaction together in your own product.

LIVE MARKDOWN

One chunk. Another possibility.

Play a stream and watch headings, lists, tables and late links update in the same real reading component.

@quirekit/incremark
vue
Read the complete setup guide

Try a stream and watch a late definition resolve an earlier link.

streaming.mdComplete

Every chunk becomes content

An AI is composing an answer in Markdown.

  • Headings, lists and tables

  • Late definitions update earlier references

IntegrationShared parser
Vue · React✓

Ready? Start with the streaming guide.

See incremental updates

Each insertion. Another tree update.

Insert bold text, inline code and a list in sequence. Follow each fragment into the source and watch affected branches change while other tree objects remain.

Actual source · actual Lezer trees

Fixed view

Loading the flowchart…

Drawn and animated by QuireKit Flowchart · 1.5× · fixed view

1

Source unfolds into a Lezer tree

A heading and three paragraphs. Each insertion builds on the preceding result, using the same source and reader lifetime.

Reader output

before update · Insertion 1 / 3

A travel plan

First paragraph: On Saturday morning we leave the station and follow the riverside path to the old town. We pass a stone bridge, a few breakfast shops and an open meadow. After breakfast we visit the bookshop. This part of the plan is already written; the next edit happens in the second paragraph.

Second paragraph: Visit the park in the afternoon, then have coffee by the river.

Third paragraph: In the evening we return to the station, perhaps buying some bread on the way. If there is time we sit in the square and watch the clock tower. Dinner is still open. This paragraph follows the edit: its text stays the same while its source positions move forward, and the parser may retain the same tree object.

—syntax trees retained
—display blocks reused

Work for the current edit; replay and painting are excluded.

Inspect complete source and syntax
## A travel plan

First paragraph: On Saturday morning we leave the station and follow the riverside path to the old town. We pass a stone bridge, a few breakfast shops and an open meadow. After breakfast we visit the bookshop. This part of the plan is already written; the next edit happens in the second paragraph.

Second paragraph: Visit the park in the afternoon, then have coffee by the river.

Third paragraph: In the evening we return to the station, perhaps buying some bread on the way. If there is time we sit in the square and watch the clock tower. Dinner is still open. This paragraph follows the edit: its text stays the same while its source positions move forward, and the parser may retain the same tree object.

Document(ATXHeading2(HeaderMark),Paragraph,Paragraph,Paragraph)