Fenced – Markdown to self-contained HTML with decorated code blocks
Terminal-window code blocks that stay as real selectable HTML, not screenshots.
A tool to convert Markdown into simple and rich web pages.
Markdown layout primitives (:::warp, silent tables) enable multi-column pages without HTML.
Static site builders, GitHub Pages users, documentation authors
marked.js · markdown-it · Hugo
The entire setup is a single script tag:
<script type="module"> import { loadMarkdown } from "https://hacknock.github.io/lobsterjs/lobster.js"; loadMarkdown("./content.md", document.getElementById("content")); </script>
It's particularly useful for GitHub Pages sites where you want Markdown-driven content without pulling in Jekyll or Hugo.---
What makes it different from marked.js or markdown-it:
Standard parsers convert Markdown to HTML — that's it. lobster.js adds layout primitives to the Markdown syntax itself:
- :::warp id defines a named content block; [~id] places it inside a silent table cell. This is how you build multi-column layouts entirely in Markdown, without touching HTML. - :::details Title renders a native <details>/<summary> collapsible block. - :::header / :::footer define semantic page regions. - Silent tables (~ | ... |) create borderless layout grids. - Cell merging: horizontal (\|) and vertical (\---) spans. - Image sizing: .
---
CSS-first design:
Every rendered element gets a predictable lbs-* class name (e.g. lbs-heading-1, lbs-table-silent). No default stylesheet is bundled — you bring your own CSS and have full control over appearance.
---
The showcase site is itself built with lobster.js. The sidebar is nav.md, and each page is a separate Markdown file loaded dynamically via ?page= query parameters — no JS router, no framework.
Markdown is the one format that humans and LLMs both write fluently. If you want a structured static site without a build pipeline, lobster.js lets that Markdown become a full web page — layout and all.
GitHub: https://github.com/Hacknock/lobsterjs Showcase: https://hacknock.github.io/lobsterjs-showcase/
Terminal-window code blocks that stay as real selectable HTML, not screenshots.
Markdown report patterns that dodge HTML token bloat for LLM workflows.
Under 3KB gzipped Markdown parser with typed AST for custom rendering.
One-time purchase word processor when Scrivener and iA Writer already own this space.
TUI debugger is novel, but nom and chumsky already own this space.
Hand-coded parser beats established libraries on speed but remains alpha quality.