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
.3mdand view it. - The format in depth - frontmatter keys, the
@planedirective, fenced grids, and cross-plane links. - The viewer - the
<three-md>web component and its view modes.