swift-fast-markdown

Parser de Markdown de alta performance para SwiftUI, baseado em md4c, com suporte a streaming e renderização Liquid Glass do iOS 26.

SWIFT / PARSINGFerramentas de desenvolvimentoOpen source · público

Cartão do GitHub do swift-fast-markdown: parser de markdown para SwiftUI com md4c, streaming e Liquid Glass do iOS 26.
MN://swift-fast-markdown — Rota do sistema

$ trace "swift-fast-markdown"

  1. bytes de markdown
  2. parse md4c
  3. IR zero-copy
  4. render SwiftUI

O problema

Renderizar Markdown em um app SwiftUI vira um problema de performance no momento em que o texto chega de um modelo token a token.

A restrição

Precisa continuar consumível como dependência SwiftPM remota, o que descarta flags de build inseguras e mantém as checagens de limite e overflow sobre entrada não confiável.

A abordagem

Um parser baseado em md4c produz uma representação intermediária zero-copy de intervalos de bytes, as views SwiftUI mantêm identidade estável para diffing barato, e um parser incremental cuida dos chunks em streaming.

O resultado

Medido em um M4 Pro ao longo de cem iterações: cerca de 0,22 ms para fazer o parse de 10 KB, cerca de 3,3 ms para renderizar em AttributedString, e cerca de 9 microssegundos por append em streaming, com 114 testes incluindo conformidade CommonMark.

MN://WORK

Mais trabalho

MN://paleta

Ações

Mudar idiomaENAbrir GitHubAbrir LinkedInAbrir X

Páginas

Início/Trabalho/work/Sobre/about/Recomendações/recommendations/Contato/contact/

Projetos

DNSChatIA / REDESAI Health SyncPRIVACIDADE / SAÚDEffts-grepRUST / BUSCAhayGREP RANQUEADO / EVIDÊNCIAdevtrimMACOS / FAIL-CLOSEDOpen Profile ManagerMACOS / OPERAÇÕESllmdeepdiveENSINO / IASTOAENSINO / ESTOICISMOGradiente Expert XP-8003D / EMULAÇÃOcf-toolkitCLOUDFLARE / SEGURANÇAMega-Sena AnalyzerDADOS / ESTATÍSTICABusca Remédios BrasilPREÇOS / FARMÁCIASBolão 2026BOLÕESO Diário NeutroNOTÍCIAS / EDITORIALOpenClaw Club BrasilCOMUNIDADE / PT-BRConhecendo IACURSO / BILÍNGUETerroir AtelierVINHO / EVIDÊNCIAWhatsImovelIMOBILIÁRIO / LEADSIA TravelVIAGEM / ANÁLISEEvent Management SystemEVENTOS / RSVPEvent Services PlatformEVENTOS / SERVIÇOMaturidade (Carlos Magno)LIVRO / COMPANHEIRO DE IABabimakeupMARCA / BELEZAWeatherSunscreenUV / SAÚDECigarInfo AIVISÃO / AUTENTICIDADEAI PedometerIA NO APARELHOswift-fast-markdownSWIFT / PARSINGCruzadas Rubro-NegrasJOGOS / FUTEBOLCruzadas TricoloresJOGOS / FUTEBOLCruzadas AlvinegrasJOGOS / FUTEBOLCruzadas FluminenseJOGOS / FUTEBOLSkillsAGENTES / FERRAMENTASOU BenchmarkBENCHMARK / LINGUAGENSPolymarket AnalyzerMERCADOS / TEMPO REALAI Calories TrackerMOBILE / API NA EDGEArremataRadarLEILÕES / DADOS OFICIAISSINALCOMPRAS PÚBLICAS / DADOSCaptureVaultiOS / NO APARELHOLUMELEITURA DIÁRIA / MOBILELente IAiOS / IA DE IMAGEMDrawing with LoveTEMPO REAL / A DOISLive RunIPHONE + WATCH / AO VIVOMinutaDraftNOTAS / SYNC CRIPTOGRAFADOLevante a TaçaIMAGEM IA / COPAVestouGUARDA-ROUPA / PWAPaquera AICOACH IA / MOBILERecursos de MultasIA JURÍDICA / TRÂNSITOGP Race StatsiOS / FÓRMULA 1IA Palavras CruzadasiOS / JOGO DE PALAVRAS

Terminal escondido do site. Digite help para ver os comandos; Esc fecha.

MN://OS — tty1
MN://>