One space per subject: Recipes, Physics, Work. Spaces are cheap. Make a new
one instead of bending an old one to fit.
Share the folder, not the file
Share a whole space, one folder inside it, or a single note. Nobody can hand
out access they do not have.
Role
Read
Comment
Write
Share
Publish
Can read
✓
Can comment
✓
✓
Can edit
✓
✓
✓
notes, folders
Admin
✓
✓
✓
✓
✓
SharingSauces · folder in RecipesName or emailARAna Ruiz[email protected]Can editJMJonas Meyer[email protected]Can commentRSYouowner of RecipesAdminA folder handed over travels alone. Ana reads these two notes and cannot see the space they are in.
The sharing panel for a folder, listing three people and the role each holds.
Talk in the margin
Select a sentence and comment on it. Comments live beside the note, not in
it, so publishing never needs cleanup. Every comment carries a name.
Marinara
Score and peel the tomatoes. Crush them by hand — a blender whips air into the sauce and pales it.
Salt at the end, not the beginning. A sauce reduced by half is twice as salty as the one you tasted.
Basil goes in off the heat, or it turns to hay.
ARAna Ruiz2hIs this true of an immersion blender too, or only a jug one?RSYou1hBoth, but the jug is much worse. Adding a line about it.ResolveAnchored to the sentence, not written into it.
A comment thread anchored to a highlighted sentence, beside the note rather than inside it.
Find it by typing
Press ⌘K anywhere. Search finds your notes, folders, spaces, and the people
you share with — titles first. It searches only your things, never anyone
else's.
⌕marin RecipesNotesMarinaraRecipes / SaucesMarination timesPhysics / Kitchen chemistryFoldersSaucesRecipesSpacesMarginalia14 notesPeopleARAna Ruizshares Recipes with you
The ⌘K palette, showing matches grouped into notes, folders, spaces and people.
Publish the space
Your username is your address: you.airnote.md. Turn a space on and it is a
site — cached, indexable, no JavaScript.
Address
Who it is for
Cached
Indexed
you.airnote.md/recipes/pasta
anyone
yes
yes
airnote.md/@you/pasta
the person you sent it to
never
if you ask
airnote.md/n/<id>
whoever holds a grant
never
never
Take a page down and the address answers 410 Gone, not 404. It existed.
you.airnote.md/recipes/sauces/marinara
RecipesMarinara
Twelve tomatoes, a head of garlic, and time. It is finished when the oil comes back out of the sauce and floats.
Score and peel the tomatoes. Crush them by hand — a blender whips air into the sauce and pales it.
Updated 12 August 2026
A published note on its own host, at you.airnote.md/recipes/sauces/marinara.
Reading is the product
The type is set for reading: line lengths that fit, a dark theme designed
for dark. Each space picks one of three font pairings.
Geistgrotesque sans · the defaultWeeknight pasta
Flour, eggs, and a bench you are willing to clean. Salt the water until it tastes of the sea.
const measure = "35em"
Sourcehumanist serif · sans headingsWeeknight pasta
Flour, eggs, and a bench you are willing to clean. Salt the water until it tastes of the sea.
const measure = "35em"
Literatabookish · drawn for screensWeeknight pasta
Flour, eggs, and a bench you are willing to clean. Salt the water until it tastes of the sea.
const measure = "35em"
The three font pairings — Geist, Source and Literata — set in the same three lines.
Everything markdown carries
One pipeline, so what works here works everywhere: app, site, export.
export function measure(pairing: PairingId): string { // 35em of Geist measures 88 characters, so the // number belongs to the face, not the product. return PAIRINGS[pairing].measure}
Math is typeset on the server — inline, φ=21+5, and in
display blocks:
∫−∞∞e−x2dx=π
Tables, task lists, footnotes1, highlights, and wiki-links that
survive renames. Like this. A note you have not written
yet reads as Tomorrow until you write it.
Addresses keep working. Change your username and the old one redirects
forever. Move a note and its old address still finds it. Deleted notes sit in
the trash for thirty days, still yours.
Start one
Name a space and write something in it. No passwords — sign in with a link
sent to your inbox, or with Google or GitHub.
## This page is a note
Markdown, put through the same pipeline as yours, with no JavaScript on it.
If you like reading it, you will like reading here.
## What a space is
A folder tree of markdown files.
```
Recipes/
├─ Weeknight pasta.md
├─ Sauces/
│ ├─ Marinara.md
│ └─ Pesto.md
└─ Index.md
```
One space per subject: Recipes, Physics, Work. Spaces are cheap. Make a new
one instead of bending an old one to fit.
## Share the folder, not the file
Share a whole space, one folder inside it, or a single note. Nobody can hand
out access they do not have.
| Role | Read | Comment | Write | Share | Publish |
|---|:-:|:-:|:-:|:-:|:-:|
| Can read | ✓ | | | | |
| Can comment | ✓ | ✓ | | | |
| Can edit | ✓ | ✓ | ✓ | notes, folders | |
| Admin | ✓ | ✓ | ✓ | ✓ | ✓ |
## Talk in the margin
Select a sentence and comment on it. Comments live beside the note, not in
it, so publishing never needs cleanup. Every comment carries a name.
## Find it by typing
Press ⌘K anywhere. Search finds your notes, folders, spaces, and the people
you share with — titles first. It searches only your things, never anyone
else's.
## Publish the space
Your username is your address: you.airnote.md. Turn a space on and it is a
site — cached, indexable, no JavaScript.
| Address | Who it is for | Cached | Indexed |
|---|---|:-:|:-:|
| `you.airnote.md/recipes/pasta` | anyone | yes | yes |
| `airnote.md/@you/pasta` | the person you sent it to | never | if you ask |
| `airnote.md/n/<id>` | whoever holds a grant | never | never |
Take a page down and the address answers **410 Gone**, not 404. It existed.
## Reading is the product
The type is set for reading: line lengths that fit, a dark theme designed
for dark. Each space picks one of three font pairings.
## Everything markdown carries
One pipeline, so what works here works everywhere: app, site, export.
```ts
export function measure(pairing: PairingId): string {
// 35em of Geist measures 88 characters, so the
// number belongs to the face, not the product.
return PAIRINGS[pairing].measure
}
```
Math is typeset on the server — inline, $\varphi = \frac{1+\sqrt5}{2}$, and in
display blocks:
$$
\int_{-\infty}^{\infty} e^{-x^2}\,\mathrm{d}x = \sqrt{\pi}
$$
Tables, task lists, footnotes[^why], ==highlights==, and [[wiki-links]] that
survive renames. [[What a space is|Like this]]. A note you have not written
yet reads as [[Tomorrow]] until you write it.
[^why]: For asides that want more than a parenthesis.
## Addresses outlive notes
Addresses keep working. Change your username and the old one redirects
forever. Move a note and its old address still finds it. Deleted notes sit in
the trash for thirty days, still yours.
## Start one
Name a space and write something in it. No passwords — sign in with a link
sent to your inbox, or with Google or GitHub.