#710·remark

mdeck — a modernized TypeScript fork of remark (vibe-coded with GitHub Copilot)

Author: dpecosCreated Apr 16, 2026Updated Apr 16, 2026

Hi @gnab and the remark community

I wanted to share mdeck, a fork of remark I built as a "vibe-coding" experiment using GitHub Copilot. The goal was to modernise the tooling while keeping full backwards compatibility with existing remark slide decks.

What's different from remark

remark mdeck
Language Plain JS TypeScript
Bundler Custom make.js Vite
Markdown parser marked markdown-it (plugin ecosystem)
Distribution Single-file CDN script ESM + UMD, npm package
Tests Mocha/Chai Vitest

What's the same

  • The entire slide Markdown syntax (---, --, ???, .class[], macros, properties, templates, layout, count, etc.)
  • The createSlideshow() API mirrors remark.create()
  • Presenter mode, clone mode, touch support, URL deep linking — all present

How it was built

The project was almost entirely vibe-coded with GitHub Copilot CLI in a series of conversations — including porting remark's test suite, fixing several open issues from this repo, and writing the documentation.

A backwards-compatibility example using the exact remarkjs.com slide content proves the syntax is fully compatible — you can see it live here.

Credits

remark deserves full credit for the slide format and the original architecture. mdeck wouldn't exist without it. Thank you for an excellent project that clearly stood the test of time — the fact it's still being used and forked in 2026 says a lot.

Happy to answer questions or take feedback!