Skip to content

What is 3md?

Getting started

What 3md is

3md is Markdown with a Z axis. A .3md file is ordinary Markdown extended along one free, named axis: instead of a flat document that only flows left to right and top to bottom, you stack your content into planes and tell the reader what the depth means.

Markdown is two dimensional. Plenty of documents are not. A daily planner moves through time. An annotated contract has overlay layers. An ASCII animation is a stack of frames. A dungeon map is a set of rooms in space. 3md keeps Markdown's plain-text simplicity and adds exactly one new dimension, with the author declaring what that dimension represents.

Say what the depth means

The Z axis is just metadata: you name it, and tools render it. Common meanings:

  • time - a planner, an agenda, a timeline, a changelog (one plane per day or step)
  • frame - animation frames played back in order (one plane per frame)
  • layer - independently toggled overlays (source, translation, annotations)
  • depth - foreground to background stacking
  • space - a literal coordinate for scene or map authoring

The format does not constrain what the axis means. The axis: value is a free string that a renderer interprets; the default is layer.

A small example

---
3md: 1.0
axis: time
title: My Week
---
@plane z=0 label="Monday"
# Monday
- [ ] Standup

@plane z=1 label="Tuesday"
# Tuesday
- [ ] Draft the spec

Each @plane directive starts a new plane at a position on the Z axis, and the Markdown between directives is that plane's body. A plain Markdown file with a 3md frontmatter header and no directives is a valid one-plane document, so you can adopt 3md gradually.

What it is good for

  • Planners, agendas, and timelines where time is the natural axis.
  • Flipbook animations and ASCII art played frame by frame.
  • Layered or annotated documents where overlays toggle independently.
  • Small scenes, maps, and voxel-style objects built from stacked grids.
  • Slide decks, where each plane is a slide.

Because each plane body is just CommonMark, any Markdown renderer can display the content, and the text stays plain, readable, and diffable.

Next steps

  • Quickstart - write your first .3md and view it.
  • The format in depth - frontmatter keys, the @plane directive, fenced grids, and cross-plane links.
  • The viewer - the <three-md> web component and its view modes.