Skip to content
Launch GitLab Knowledge Graph

Implement streaming text parser for AI responses

Feature Request

Build a streaming text parser that handles incremental rendering of AI responses with markdown formatting.

Requirements

Real-Time Rendering

  • Parse markdown chunks as they arrive
  • Update DOM incrementally without flickering
  • Handle incomplete markdown (mid-word, mid-tag)
  • Buffer incomplete tokens

Markdown Support

  • Code blocks with syntax highlighting (Prism.js)
  • Inline code, bold, italic
  • Lists (ordered, unordered)
  • Links and images
  • Tables
  • Blockquotes

Performance

  • Handle 1000+ words/second streaming rate
  • Use Web Workers for heavy parsing
  • Debounce DOM updates (every 50ms)
  • Memory efficient (< 10MB for 100K words)

Edge Cases

  • Malformed markdown
  • Very long responses (> 10K words)
  • Connection interruptions
  • Rate limiting backpressure

Security Considerations

  • ⚠️ Must sanitize markdown to prevent XSS
  • Related to web-app-react#1 (XSS vulnerability)
  • Use DOMPurify for sanitization

Related Issues

cc: @dmitry @michael_usanchenko