[HN Gopher] Show HN: MDV - a Markdown superset for docs, dashboa...
       ___________________________________________________________________
        
       Show HN: MDV - a Markdown superset for docs, dashboards, and slides
       with data
        
       Author : drasim
       Score  : 77 points
       Date   : 2026-04-18 15:24 UTC (7 hours ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | kevinkoning wrote:
       | Markdown is a beautiful demonstration that document structure
       | syntax can/should be simple. What most people do in Word is
       | better done by just adjusting the document rendering/style, not
       | the document structure...
       | 
       | I love the idea of extending markdown to include more visual
       | elements, but if you're not careful you just reinvent HTML.
       | 
       | Here's my personal take on extending table syntax for charts.
       | Easy to write, and if a renderer/parser understands the syntax
       | you get a beautiful chart, and if it doesn't you get a table with
       | slightly weird headings:                 | Month::x | Revenue::y1
       | | Cost::y2 |       | -------- | ----------: | -------: |       |
       | Jan      | $82,000     | $51,000 |       | Feb      | $91,000
       | | $56,000 |       | Mar      | $95,000     | $58,000 |
        
         | esafak wrote:
         | What's the : in the divider?
        
           | microflash wrote:
           | That's header alignment marker. If it's on right, the header
           | cell is aligned to right.
        
         | rao-v wrote:
         | Tables are the one thing in markdown where I'd prefer to
         | emphasize edit ergonomics over good looking unrendered text.
         | Making a quick manual change like adding column to a markdown
         | table is just unfun. I've always thought a json like format
         | that a linter can organize would be better.
         | 
         | Which is all to say I really like the table proposal here -
         | adding an optional linter to make the data look tabular in
         | unrendered markdown will make it even better
        
           | freedomben wrote:
           | > _Making a quick manual change like adding column to a
           | markdown table is just unfun._
           | 
           | This is one of those moments where I realize that the vim
           | life spoils me. It's so easy to do this in vim that I don't
           | even think about. I probably use it a dozen times per day
           | such as commenting out code.
           | 
           | Ctrl + v, select where you want the character, then hit I
           | (shift + i), type your thing, hit escape, and Bob's your
           | uncle.
        
             | nine_k wrote:
             | Same in Emacs, and, I suppose, in any editor with enough
             | self-respect to support vertical blocks.
        
             | jez wrote:
             | Even in Vim, the editing experience falls over when making
             | markdown tables that have non-trivial content in their
             | cells (multiple paragraphs, a code block, etc.). I recently
             | learned that reStructuredText supports something called
             | "list tables":
             | 
             | https://docutils.sourceforge.io/docs/ref/rst/directives.htm
             | l...
             | 
             | Where a table is specified as a depth-2 list and then post
             | processed into a table. Lists support the full range of
             | block elements already: you can have multiple paragraphs,
             | code blocks, more lists, etc. inside a list item.
             | 
             | This syntax inspired the author of Markdoc[1] (who came
             | from an rST background) to support tables using
             | `<hr>`-separated lists[2] instead of nested lists (to
             | provide more visual separation between rows).
             | 
             | I have found various implementations of list table filters
             | for Pandoc markdown[3][4], but have never gotten around to
             | using any of them (and I've tossed around ideas of
             | implementing my own).
             | 
             | [1] https://markdoc.dev
             | 
             | [2] https://markdoc.dev/docs/tags#table
             | 
             | [3] https://github.com/pandoc-ext/list-table
             | 
             | [4] https://github.com/bpj/pandoc-list-table
        
               | toastal wrote:
               | reStructuredText & AsciiDoc are so, _so_ much better than
               | Markdown since they have rich feature sets to actually
               | build documentation, blogging,  & so on. It's a massive
               | shame everyone would prefer _yet another Markdown fork_
               | like the OP.
        
           | cush wrote:
           | Any editor plugin makes it easy though
        
       | phyzix5761 wrote:
       | Nice project. But at what point does Markdown just become Emacs
       | Org-Mode? At least with Emacs you can write Lisp to make your
       | document do anything you want.
        
         | AlecSchueler wrote:
         | Deepening on who your users are you might also say "at least
         | with markdown they write Lisp and make their documents do
         | whatever they like."
        
         | arikrahman wrote:
         | I'm struggling to figure out why I wouldn't just use Emacs Org
         | or even Typst for this use case.
        
           | maleldil wrote:
           | Typst is amazing, but if you want HTML output, it's not quite
           | there yet.
        
       | amcaskill wrote:
       | I work on a dashboarding / BI solution that is also built around
       | markdown and clickhouse. www.evidence.dev
       | 
       | We moved to stripe's Markdoc variant for the component syntax
       | last year and have been really happy with it. Models are good at
       | writing it, people are good at reviewing it.
       | 
       | Here's an area chart that would issue a SQL query for weekly
       | revenue totals:
       | 
       | ``` {% area_chart data="my_table" x="date" y="sum(revenue)"
       | date_grain="week" /%} ```
        
         | tnolet wrote:
         | This is XML without the < and >
        
           | Diti wrote:
           | Yeah, why not go directly the route of custom HTML elements
           | in Markdown anyway, since HTML inside Markdown is valid?
        
       | remywang wrote:
       | All of these are supported in pandoc markdown:
       | 
       | > .mdv is strict CommonMark plus four additions:
       | 
       | > YAML front-matter for title, theme, named styles, and dataset
       | references.
       | 
       | > Fenced blocks for data/visuals: ```chart type=bar x=region
       | y=sales.
       | 
       | > ::: containers for styled regions and layout: ::: callout / :::
       | columns.
       | 
       | > ::: toc for an auto-generated table of contents.
        
       | nzoschke wrote:
       | Looks cool.
       | 
       | I continue to love Markdown and always push it a bit further than
       | Commonmark, with frontmatter, schemas, code fence metadata too.
       | 
       | I've been enjoying https://djot.net/ as a superset of Markdown
       | that is feels very well designed and extensible too.
       | 
       | You may look into its syntax and tooling for prior art or some
       | extra lift.
       | 
       | I'm trying to get a djot extension in Zed for syntax highlighting
       | if anyone minds adding a to help signal some community interest.
       | 
       | https://github.com/zed-industries/extensions/pull/5206
        
       | ifh-hn wrote:
       | I'm using quarto for this sort of thing.
        
       | woodydesign wrote:
       | Very cool.
       | 
       | I'm a product designer, and I could totally see this fitting into
       | my workflow for design briefs, strategy, review, and crit docs.
       | Markdown is too simple, and Figma is too visual. This feels like
       | a great middle ground.
        
       | sieste wrote:
       | I was expecting to find a link to a github pages site where I can
       | see the rendered examples, but only found a link to the html
       | sources in examples/out. Am I missing something?
        
         | garyfirestorm wrote:
         | nope this is becoming a theme. many showhn posts that are about
         | visualizations do not have any renderings of said
         | visualizations. especially in github readme.
        
         | bthallplz wrote:
         | I was curious to see them, too, so I uploaded the HTML examples
         | here: https://tacticaltypos-tools.pgs.sh/mdv/examples/out/
        
           | trueno wrote:
           | jesus thank you, im so wary of any project that isn't going
           | to do this bare minimum. static pages on gh are literally
           | free it feels absurd to post this project to HN without doing
           | that.
        
         | FailMore wrote:
         | I feel your pain. My project is https://sdocs.dev, the homepage
         | is actually the rendering of a markdown file (sdoc.md), so you
         | can see how SDocs renders immediately. There are some links on
         | the homepage to other Markdown files with some elaborate styles
         | and charts
        
       | pixelmonkey wrote:
       | This seems cool. For going from Markdown to slides I've often
       | used Marp: https://marp.app/ -- It doesn't require much
       | specialized syntax, it mostly does the right thing to turn plain
       | Markdown sections into slides. Simple self-hostable HTML output
       | and PDF export options. Already has a VSCode preview plugin, too.
       | I noticed that Claude Code is able to generate Marp slides for
       | you if you ask it, as well.
       | 
       | Best for slides that are just bullet points, full-slide images,
       | and code. Especially code. Less good if you have a lot of images
       | or need to do your own styles or layout.
        
       | FailMore wrote:
       | This is cool. Can you tell me more about the :: blocks thing. I
       | didn't know that was a Markdown element.
       | 
       | This problem has risen to the top of many people's minds at this
       | moment (including mine!). My Show HN for a similar cli + web
       | based solution (https://sdocs.dev) is on the /show page now
       | (https://news.ycombinator.com/item?id=47777633).
       | 
       | I also went with Front Matter for styling and added an
       | interactive styling mode you can do on the web to test it out
       | immediately. There are some examples on my homepage which
       | demonstrate it in action.
       | 
       | SDocs is cli -> instantly rendered on web
       | 
       | Despite being in the browser, the content of SDocs rendered
       | Markdown files remain local to you. SDoc urls contain your
       | markdown document's content in compressed base64 in the url
       | fragment (the bit after the `#`):
       | https://sdocs.dev/#md=GzcFAMT...(this is the contents of your
       | document)... The url fragment is never sent to the server (see
       | https://developer.mozilla.org/en-US/docs/Web/URI/Reference/F...:
       | "The fragment is not sent to the server when the URI is
       | requested; it is processed by the client").
       | 
       | The sdocs.dev webapp is purely a client side decoding and
       | rendering engine for the content stored in the url fragment.
       | 
       | This also means you can share your .md files privately by sharing
       | the url.
       | 
       | Also, I'm sorry I high jacked your post to some degree with this
       | comment. It's just a little too relevant for me not to leave a
       | comment!
        
       | gkfasdfasdf wrote:
       | Looks wonderful, is there a skill or prompt that can teach agents
       | how to use this format?
        
         | FailMore wrote:
         | Maybe not a direct answer to your question, but
         | https://sdocs.dev has a cli built for agents. 'sdoc --help' and
         | 'sdoc schema' and 'sdoc charts' teach your agent how to use it.
         | You can try it with 'npm i -g sdocs-dev'
        
       ___________________________________________________________________
       (page generated 2026-04-18 23:00 UTC)