finds.dev← search

// the find

bevacqua/woofmark

★ 1,634 · JavaScript · MIT · updated Mar 2024

:dog2: Barking up the DOM tree. A modular, progressive, and beautiful Markdown and HTML editor

A vanilla JS textarea enhancer that adds Markdown/HTML/WYSIWYG editing modes to an existing textarea element. It brings its own undo/redo, file upload wiring, and selection persistence across mode switches. Aimed at developers who want a lightweight editor they can drop into their own UI without adopting a heavy framework.

The bring-your-own-parser design is genuinely good — decoupling the editor from any specific Markdown flavor means you can match your server-side parser exactly. Selection persistence across mode switches is a real differentiator; most editors lose cursor position on a mode toggle. The chunks API for custom commands is clean: you get before/selection/after as plain strings, mutate them, and undo/redo is handled automatically. File upload support is built in without a heavyweight dependency chain.

Last meaningful activity is from 2024 but the codebase is essentially frozen circa 2016 — it references bower, lacks any TypeScript types, and the build chain is pre-webpack grunt era. The parser dependency story is uncomfortable: megamark and domador are both unmaintained bevacqua-era projects, so you're inheriting that maintenance risk the moment you reach for the recommended setup. No mobile / touch handling is documented or tested. IE9+ support as a selling point in 2024 is a sign this hasn't been rethought in a long time.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →