GitShow/developit/snarkdown
developit

snarkdown

:smirk_cat: A snarky 1kb Markdown parser written in JavaScript

by developit
javascriptmarkdownparser
Star on GitHubForkWebsitenpm

JavaScript

2.4k stars115 forks14 contributorsQuiet · 3y agoSince 20142.0.0MIT

Meet the team

See all 14 on GitHub →
developit
developit66 contributions
mesqueeb
mesqueeb8 contributions
Jonarod
Jonarod5 contributions
gribnoysup
gribnoysup3 contributions
greenkeeper[bot]Bot
greenkeeper[bot]3 contributions
AnandChowdhary
AnandChowdhary2 contributions
tusbar
tusbar2 contributions
anikethsaha
anikethsaha1 contribution

Languages

View on GitHub →
JavaScript100%

Commit activity

Last 12 weeks · 0 commits

Full graph →

Community health

2 of 6 standards met

Community profile →
42
✓README✓License○Contributing○Code of Conduct○Issue Template○PR Template

Recent PRs & issues

Quiet · Last activity 3y ago
See all on GitHub →
BrianWillows
fix: resolve link hrefs in a single pass (O(n) instead of O(n^2))OpenPR

Summary resolves each link's by rewriting the entire output string on every closing : grows with the input, and rescans it from the start each time, so a document with N links is O(n²). Because Markdown is untrusted input by definition, this is a CPU-exhaustion / DoS vector (CWE-407): a single link-heavy field can block the event loop for seconds. Measured on the current code, input : Fix Instead of rewriting on every , record the offset of each `outnpm test` in the source — output is byte-for-byte identical before and after. Timing is now linear (see table); 128k links parse in ~131 ms. Notes Found and fixed with AI assistance (Claude). Happy to adjust naming/comments or add a regression test if you'd like.

BrianWillows · 1w ago
Andarist
Escaping doesn't work properlyOpenIssue

input actual expected* https://babelmark.github.io/?text=this%5Cis%5C*important

Andarist · 1mo ago
tandav
Add minimal table supportOpenPR

Adds GFM-style table parsing as a new tokenizer alternative and a single handler branch, keeping with snarkdown's one-regex design. What it does Consecutive lines starting with are parsed as a `---:---:codetheadtbodynode:16`.

tandav · 2mo ago
Structured data for AI agents

Repository: developit/snarkdown. Description: :smirk_cat: A snarky 1kb Markdown parser written in JavaScript Stars: 2401, Forks: 115. Primary language: JavaScript. Languages: JavaScript (100%). License: MIT. Homepage: http://jsfiddle.net/developit/828w6t1x/ Topics: javascript, markdown, parser. Latest release: 2.0.0 (6y ago). Open PRs: 11, open issues: 34. Last activity: 3y ago. Community health: 42%. Top contributors: developit, mesqueeb, Jonarod, gribnoysup, greenkeeper[bot], AnandChowdhary, tusbar, anikethsaha, DanielRuf, guywaldman and others.

·@ofershap

Replace github.com with gitshow.dev