The Margin Format

Plain text that does more.

Most note-taking tools focus of formatting only as they use Markdown, Margin let's you focus on the meaning of your notes and makes it look fantastic.

You never have to learn the format unless you want to — we've crafted a visual editor that does the work for you. Just press \ to pick a block type (heading, task, decision, and so on). For those who prefer the keyboard, every block has a prefix you can type directly.

Pick a block from the menu

Press \ on a new line to open the block menu. Start typing to filter, then press Enter to insert the block. Every prefix shown in the Manual tab has a matching entry here — use whichever feels faster.

Even if the line already has content, pressing \ brings up the menu to change the current line's block type — your text stays put, only the formatting changes.

Heading 1
Heading 2
Heading 3
Task
Bullet
Numbered
Question
Answer
Justification (why?)
Important
Blockquote
Tag

Comparison to Markdown

Markdown
# My Tasks

## To Do
- [ ] Design homepage
- [x] Set up repo

(https://www.google.com)

## Decision
**Q: Which framework?**
*A: React — for ecosystem.*

> **Important:** Ship by Friday
Margin
My Tasks

> To Do
- Design homepage
| Set up repo

https://www.google.com

? Which framework?
A. React — for ecosystem.

! Ship by Friday

Title & Headings

The first line is always the title, no special syntax needed. Use >, >>, >>> for subsequent heading levels.

Margin Syntax
My Project Plan
> Overview
Some introductory text here.
>> Goals
Define the key objectives.
>>> Milestones
Track quarterly progress.
Rendered

My Project Plan

Overview

Some introductory text here.

Goals

Define the key objectives.

Milestones

Track quarterly progress.

Task Management

Three simple prefixes give you a full task workflow. Cycle between states as work progresses. Things like due dates are automatically deduced from the text.

Margin Syntax
- Task not started
- Task not started, due 1st July. 
/ A task started but not finished.
| Done task. 
| Another done task.
Rendered
Task not started
Task not started, due 1st July.
A task started but not finished.
Done task.
Another done task.

Bullet Points

Simple, clean lists with *. Lists can be indented to create sub-items.

Margin Syntax
* Keep the interface minimal
* Prioritize keyboard shortcuts
* Ship weekly, iterate fast
* Measure what matters
Rendered
Keep the interface minimal
Prioritize keyboard shortcuts
Ship weekly, iterate fast
Measure what matters

Tags

Categorize content with #tags. Multiple tags can be applied to the same note.

Margin Syntax
#design
#frontend
Rendered

#design

#frontend

Questions & Answers

Capture questions and their answers easily with ?, A. syntax. Simply place the answer after the question to link them together. A question without an answer is considered a task that needs to be completed.

Margin Syntax
? Which database should we use?
A. PostgreSQL for the primary store.

? Why not use a NoSQL database?
A. We need strong relational queries.

            
Rendered
Which database should we use?
PostgreSQL for the primary store.

Why not use a NoSQL database?
We need strong relational queries.

Important & Decision Blocks

Highlight critical decisions with ! and then simply pair with why? to record the rationale.

Margin Syntax
! Ship the MVP by March 15th
why? Conference demo is on the 18th
    and we need 2 days for staging.

! Use server-side rendering only
Rendered
Ship the MVP by March 15th
Conference demo is on the 18th and we need 2 days for staging.

Use server-side rendering only

Tables

Create data tables with : and pipe-delimited columns. Add a bit of metadate,<<header-row>>, to specify things like header rows.

Margin Syntax
<<header-row>>
: Feature | Status | Owner
: Auth | Complete | Alice
: Dashboard | In Progress | Bob
: API Docs | Pending | Carol
Rendered
FeatureStatusOwner
AuthCompleteAlice
DashboardIn ProgressBob
API DocsPendingCarol

Code Blocks

Prefix lines with ` for monospaced code formatting.

Margin Syntax
`function greet(name) {
`  return `Hello, ${name}!`;
`}
Rendered

function greet(name) {

return `Hello, ${name}!`;

}

Links & Files

URLs are automatically linked, no need for any special markup. File paths reference local documents and images.

Margin Syntax
Check the docs at https://www.google.com

https://www.google.com

file://C:/reports/Q2-results.pdf

Horizontal Rules

Use --- to separate sections visually.

Margin Syntax
Some content above.

---

Some content below.
Rendered

Some content above.


Some content below.

Full Document Example

A realistic project document combining every feature — as raw Margin text and as it renders.

Margin Syntax
Product Launch Plan

#product #launch #Q2

> Goals
* Reach 1,000 beta signups
* Achieve <2s page load time
* Ship all P0 features

> Task Tracker
- Write launch blog post
- Create demo video
/ Finalize pricing page
/ QA pass on mobile
| Design system complete
| Domain and SSL configured

> Key Decisions
! Launch date is April 30th
why? Aligns with the industry
     conference on May 2nd.

? Should we offer a free tier?
A. Yes — capped at 3 projects.

> Sprint Data
<<header-row>>
: Sprint | Points | Velocity
: Sprint 1 | 34 | 34
: Sprint 2 | 29 | 31.5
: Sprint 3 | 38 | 33.7

> Technical Notes
`server.listen(3000);
`console.log("Ready");

---

See https://example.com/roadmap
Rendered

Product Launch Plan

#product #launch #Q2

Goals

Reach 1,000 beta signups
Achieve <2s page load time
Ship all P0 features

Task Tracker

Write launch blog post
Create demo video
Finalize pricing page
QA pass on mobile
Design system complete
Domain and SSL configured

Key Decisions

Launch date is April 30th
Aligns with the industry conference on May 2nd.

Should we offer a free tier?
Yes — capped at 3 projects.

Sprint Data

SprintPointsVelocity
Sprint 13434
Sprint 22931.5
Sprint 33833.7

Technical Notes

server.listen(3000);

console.log("Ready");


See https://example.com/roadmap