Skip to content

Releases: deftio/quikdown

v1.2.0 - AST Libraries

08 Feb 06:54

Choose a tag to compare

New Features

AST Companion Libraries

Four new libraries for structured markdown output:

  • quikdown_ast - Markdown to AST (Abstract Syntax Tree) parser
  • quikdown_json - Markdown to JSON conversion
  • quikdown_yaml - Markdown to YAML conversion (zero dependencies)
  • quikdown_ast_html - AST/JSON/YAML to HTML renderer

Usage

import quikdown_ast from 'quikdown/ast';
import quikdown_json from 'quikdown/json';
import quikdown_yaml from 'quikdown/yaml';
import quikdown_ast_html from 'quikdown/ast-html';

const markdown = '# Hello **world**';

const ast = quikdown_ast(markdown);
const json = quikdown_json(markdown);
const yaml = quikdown_yaml(markdown);
const html = quikdown_ast_html(ast);

Highlights

  • Forgiving parser - handles malformed markdown gracefully
  • Loop protection - built-in safeguards against infinite loops
  • Zero dependencies - YAML serializer included
  • Full test coverage - 95%+ line coverage, 1112 tests
  • TypeScript support included

Documentation

Bundle Sizes

Library Minified
quikdown.js 9.0 KB
quikdown_bd.js 13.8 KB
quikdown_edit.js 68.0 KB
quikdown_ast.js ~5 KB
quikdown_json.js ~5 KB
quikdown_yaml.js ~7 KB
quikdown_ast_html.js ~10 KB

Release v1.1.1

14 Sep 07:16

Choose a tag to compare

Recent Changes

  • docs clean up (e0bad6f)
  • Update documentation with v1.1.1 changes and clean up test artifacts (05a5605)
  • fully tested rich-copy and paste plus all bidirectional fences tested and working quikdown_edit.js. updated docs (099076a)
  • all cut-and-paste functionality working well now. Updated builds and dead code removal (815d827)
  • updated copy-paste for mathblock fences (f6d58e6)
  • fixed goejson copy paste (2f7cb96)
  • Switch from KaTeX to MathJax for better copy-rendered support (0789467)
  • Improve KaTeX handling in copy-rendered (3a54545)
  • Fix Math equation rendering in copy-rendered (db99ec8)
  • Implement Phase 1 of copy-rich-content plan (1f0ee51)
  • Improve copy-rendered fidelity to match squibview's output quality (f460e5c)
  • Fix tainted canvas error by using squibview's exact svgToPng implementation (6b3250e)
  • Implement squibview-style copy-rendered for better compatibility (d1172a1)
  • Fix copy-rendered functionality for all fence types (dce6ab5)
  • working all fences example in quikdown_edit.js (4b6a537)
  • fences for quikdown_edit.js for geojson, working, bidirectional code editing working (67508c7)
  • minor doc updates (7082887)
  • updated docs for 1.1.0 release (a053b00)
  • 1.1.0 release better editor suport fixes in line handling (d4e7883)
  • 1.0.6 fixes for perf, lf, editor (70f00f3)

File Sizes

  • dist/quikdown.esm.min.js: 9.1K
  • dist/quikdown.umd.min.js: 9.3K
  • dist/quikdown_bd.esm.min.js: 14K
  • dist/quikdown_bd.umd.min.js: 15K
  • dist/quikdown_edit.esm.min.js: 69K
  • dist/quikdown_edit.umd.min.js: 69K

Release v1.1.0

23 Aug 05:19

Choose a tag to compare

Recent Changes

  • updated docs for 1.1.0 release (a053b00)
  • 1.1.0 release better editor suport fixes in line handling (d4e7883)
  • 1.0.6 fixes for perf, lf, editor (70f00f3)
  • ebnf version now working 100% see dev/lex for notes (bc6a3a5)
  • ebnf version... (f725d9a)
  • udpated lex version w grammar (f463f44)
  • cleand up lexer vesion w 100% pass parity with regex version (c25ee9c)
  • lexer version working (76a89f5)
  • updated quikdown lexer to pass all tests (aa105d3)
  • clean up todos (2b573e5)
  • Optimize CI: test only on Node 20.x to reduce runtime from 20min to ~7min (bbbaafa)
  • docs update (38ea9d4)
  • update README.md for v1.0.5 (29bbe23)
  • updated README.md (7165e30)
  • tests and docs for 1.0.5 now up to date (201d87f)
  • fixed errors in tests for quikdown_edit.js (0141617)
  • optimzed quikdown_edit.js fence and escape codes (ff658c3)
  • fixing fences in quikdown_edit.js and examples (1217ce6)
  • prepping 1.0.5 release (44dd923)
  • udpated docs on editor fence plugins (ebf8404)

File Sizes

  • dist/quikdown.esm.min.js: 9.1K
  • dist/quikdown.umd.min.js: 9.3K
  • dist/quikdown_bd.esm.min.js: 14K
  • dist/quikdown_bd.umd.min.js: 15K
  • dist/quikdown_edit.esm.min.js: 38K
  • dist/quikdown_edit.umd.min.js: 39K

Release v1.0.5

21 Aug 04:06

Choose a tag to compare

Recent Changes

  • docs update (38ea9d4)
  • update README.md for v1.0.5 (29bbe23)
  • updated README.md (7165e30)
  • tests and docs for 1.0.5 now up to date (201d87f)
  • fixed errors in tests for quikdown_edit.js (0141617)
  • optimzed quikdown_edit.js fence and escape codes (ff658c3)
  • fixing fences in quikdown_edit.js and examples (1217ce6)
  • prepping 1.0.5 release (44dd923)
  • udpated docs on editor fence plugins (ebf8404)
  • 1.0.5 fixed table bug (702dccb)
  • updated example home page (cfa37ad)
  • updated quikdown_edit with examples (7102753)
  • updated lazy lf feature docs (6e9afd4)
  • updated tests for lazy linefeeds (807b761)
  • added lazy lf support (option) (e60cf96)
  • 1.0.5 release fixed bidirectional issues with improved tags, more examples, updated docs (3ba4746)
  • working full tests (1379a5f)
  • 1.0.5 fixing coverage and dead code issues (b04b1db)
  • working on testing converage on quiddown_bd (b16ff79)
  • quikchat bidir fixes working, cleand up experimental lexer version to seperate dir, add printSizes tools, tests passing but need to fix coverage issues (f1163f4)

File Sizes

  • dist/quikdown.esm.min.js: 8.7K
  • dist/quikdown.umd.min.js: 9.0K
  • dist/quikdown_bd.esm.min.js: 13K
  • dist/quikdown_bd.umd.min.js: 13K
  • dist/quikdown_edit.esm.min.js: 36K
  • dist/quikdown_edit.umd.min.js: 37K

Release v1.0.4

18 Aug 00:32

Choose a tag to compare

Recent Changes

  • updated css for 1.0.4 (076be6b)
  • updated docs and full release for 1.0.4 (e4f4215)
  • udpated 1.0.4 docs/release-notes.md (ee20e07)
  • updated docs for 1.0.4 bidirectional release (b1015f8)
  • fixed test issues in 1.0.4 release (d565ed4)
  • full bidirectioanl support with styles and tests passing (d35e4af)
  • 1.0.4 bidirectional working now doing prerelease cleanup items, docs, etc (d576cb4)
  • improvements to bidirectional editor experiment (fc90df8)
  • added experimental bidirectional support (3aa77c7)
  • begin 1.0.4 dev (7b27643)
  • Add write permissions to release workflow (603e799)
  • Fix release workflow - use softprops/action-gh-release instead of deprecated actions (f2a2458)
  • Update CSS file timestamps from build (7d555f2)
  • v1.0.3 size reduction to 7.5KB, css consistency updates, lexer version, documentation updates (7279afa)
  • fixed theming and inline styles to match (aff09f1)
  • working quikdown-lexer version but left as experiemental (e5c209f)
  • added typescript defs (f803e27)
  • size reductions - Moved styles to module level - Created QUIKDOWN_STYLES constant as single source of truth 2. Created createGetAttr factory - Eliminated 4 duplicate function definitions 3. Implemented replace chain arrays - Consolidated repetitive replace operations into arrays with forEach loops netted a reduction in build size from 9.3KB to 7.4KB (dc351cc)
  • started optimization cleanup plan (4925742)
  • Add .nojekyll to bypass Jekyll processing on GitHub Pages (013b636)

File Sizes

  • dist/quikdown-lex.esm.min.js: 8.4K
  • dist/quikdown-lex.umd.min.js: 8.6K
  • dist/quikdown.esm.min.js: 7.5K
  • dist/quikdown.umd.min.js: 7.7K
  • dist/quikdown_bd.esm.min.js: 9.8K
  • dist/quikdown_bd.umd.min.js: 10K

Release v1.0.3

17 Aug 11:30

Choose a tag to compare

Recent Changes

  • Add write permissions to release workflow (603e799)
  • Fix release workflow - use softprops/action-gh-release instead of deprecated actions (f2a2458)
  • Update CSS file timestamps from build (7d555f2)
  • v1.0.3 size reduction to 7.5KB, css consistency updates, lexer version, documentation updates (7279afa)
  • fixed theming and inline styles to match (aff09f1)
  • working quikdown-lexer version but left as experiemental (e5c209f)
  • added typescript defs (f803e27)
  • size reductions - Moved styles to module level - Created QUIKDOWN_STYLES constant as single source of truth 2. Created createGetAttr factory - Eliminated 4 duplicate function definitions 3. Implemented replace chain arrays - Consolidated repetitive replace operations into arrays with forEach loops netted a reduction in build size from 9.3KB to 7.4KB (dc351cc)
  • started optimization cleanup plan (4925742)
  • Add .nojekyll to bypass Jekyll processing on GitHub Pages (013b636)
  • fixed npm badge to use shields.io (9d8231a)
  • fixed fences, massive doc updates, robustness fixes, many examples added. (2e42469)
  • fixed bug in ~~~ fences not requiring beginning of line anchor (d958772)
  • updated themes (522e792)
  • minor version sync updates (818c1e5)
  • minor version sync updates (a90744e)
  • fixed README.md demo URL (86da664)
  • minor perf improvements, tests, doc updates (af3a91e)
  • robustness fixes, release ci prep (08bbb49)
  • sec and html sanitzation improvement (0011953)

File Sizes

  • dist/quikdown-lex.esm.min.js: 8.4K
  • dist/quikdown-lex.umd.min.js: 8.6K
  • dist/quikdown.esm.min.js: 7.5K
  • dist/quikdown.umd.min.js: 7.7K

Release v1.0.2

17 Aug 02:35

Choose a tag to compare

Release v1.0.2

📦 Installation

npm install quikdown@1.0.2

📊 Bundle Sizes

  • quikdown.esm.min.js: 9.0KB
  • quikdown.umd.min.js: 9.2KB

🔄 Recent Changes

  • fixed fences, massive doc updates, robustness fixes, many examples added. (2e42469)
  • fixed bug in ~~~ fences not requiring beginning of line anchor (d958772)
  • updated themes (522e792)
  • minor version sync updates (818c1e5)
  • minor version sync updates (a90744e)
  • fixed README.md demo URL (86da664)
  • minor perf improvements, tests, doc updates (af3a91e)
  • robustness fixes, release ci prep (08bbb49)
  • sec and html sanitzation improvement (0011953)
  • minor doc corrections (e5d685f)

🚀 Features

  • Task lists support
  • URL sanitization
  • Autolinks
  • Flexible table syntax

Built with quikdown 1.0.2

Release v1.0.1

16 Aug 09:03

Choose a tag to compare

Release v1.0.1

📦 Installation

npm install quikdown@1.0.1

📊 Bundle Sizes

  • quikdown.esm.min.js: 8.4KB
  • quikdown.umd.min.js: 8.7KB

🔄 Recent Changes

  • minor version sync updates (818c1e5)
  • minor version sync updates (a90744e)
  • fixed README.md demo URL (86da664)
  • minor perf improvements, tests, doc updates (af3a91e)
  • robustness fixes, release ci prep (08bbb49)
  • sec and html sanitzation improvement (0011953)
  • minor doc corrections (e5d685f)
  • updated tests (49c16aa)
  • initial commit from quikchat (01ad133)

🚀 Features

  • Task lists support
  • URL sanitization
  • Autolinks
  • Flexible table syntax

Built with quikdown 1.0.1