Export format
You never need ClearNote
to read your own notes.
Version 1 of the portable export, documented in full.
What you get
Export Everything writes a folder. No archive to unpack, no proprietary container, no server call.
ClearNote Export 2026-08-31/
index.html Browse every note. Open this first.
README.txt Plain-text description of the contents.
manifest.json Machine-readable record of everything.
tasks.md Every task, grouped by project.
notes/
Personal/
Passport renewal-4f2a1c88.html
Passport renewal-4f2a1c88.md
Archive/Receipts/
Monitor purchase-9b1e7a20.html
Monitor purchase-9b1e7a20.md
attachments/
9b1e7a20-invoice-2019.pdf
original-source/
4f2a1c88-....xml The untouched Evernote source, for imported notes
Notes
Each note is written twice. The .html file is the faithful copy: full formatting, an inline stylesheet, and the note’s metadata in a header. The .md file is a convenience conversion with YAML front matter — Markdown cannot express everything a note can, which is exactly why the HTML is there too.
Filenames are the note title plus the first eight characters of its identifier, so two notes with the same title never collide. Folders mirror your notebook hierarchy. Images and attachment links point at relative paths under attachments/, so the export is self-contained and works from a USB stick.
Attachments
Byte-for-byte as ClearNote stored them. Never recompressed, resized or renamed beyond a short identifier prefix that keeps two identically-named files apart. manifest.json records the SHA-256 of each one, so you can verify the copy:
shasum -a 256 attachments/9b1e7a20-invoice-2019.pdf
manifest.json
The complete record. Dates are ISO 8601. Identifiers are UUIDs and are stable across exports.
{
"formatVersion": 1,
"generator": "ClearNote",
"generatorVersion": "1.0",
"exportedAt": "2026-08-31T10:15:00Z",
"counts": { "notes": 4821, "notebooks": 34, "tags": 210,
"attachments": 1180, "attachmentBytes": 2914857123,
"tasks": 96, "projects": 7, "trashedNotes": 0 },
"notebooks": [ { "id": "…", "name": "Receipts",
"parentID": "…", "path": ["Archive", "Receipts"] } ],
"tags": ["admin", "travel"],
"notes": [ {
"id": "…", "title": "Monitor purchase",
"createdAt": "2019-01-04T12:00:00Z", "updatedAt": "2024-02-11T09:30:00Z",
"notebookID": "…", "notebookPath": ["Archive", "Receipts"],
"tags": ["hardware"], "isPinned": false, "trashedAt": null,
"sourceURL": "https://…", "latitude": null, "longitude": null,
"htmlPath": "notes/Archive/Receipts/Monitor purchase-9b1e7a20.html",
"markdownPath": "notes/Archive/Receipts/Monitor purchase-9b1e7a20.md",
"originalSourcePath": "original-source/….xml",
"originalFormat": "enex",
"importMetadata": { "author": "…", "source-application": "evernote.mac" },
"attachments": [ { "id": "…", "filename": "invoice-2019.pdf",
"mimeType": "application/pdf", "byteCount": 84213,
"sha256": "…", "path": "attachments/…",
"ocrText": null, "extractedText": "…",
"sourceKind": "import", "integrityVerified": true } ],
"hasConflict": false, "revisionCount": 3
} ],
"projects": [ { "id": "…", "name": "Inbox", "isInbox": true } ],
"tasks": [ { "id": "…", "title": "Register warranty", "details": null,
"projectID": "…", "dueDate": null, "dueHasTime": false,
"reminderAt": null, "priority": 2, "completedAt": null,
"recurrenceRule": "unit=year;interval=1",
"recurrenceDescription": "Every year",
"labels": [], "linkedNoteID": "…", "parentTaskID": null,
"createdAt": "…", "updatedAt": "…" } ]
}
The note HTML
ClearNote’s own document format is a documented subset of HTML. Blocks are p, h1–h3, ul, ol, blockquote, pre>code, hr, table and div. Inline runs are strong, em, u, s, code, a and img. Checklist items are list items carrying data-checked="true" or "false". Content ClearNote preserved but could not display natively carries class="cn-unsupported" with a data-cn-kind attribute saying what it was.
That is the whole vocabulary. Any HTML parser can read it, and the stylesheet is inline so the files render identically anywhere.
Recurrence rules
A flat, readable string so it survives a text export unchanged: unit=week;interval=2;weekdays=2,5. unit is day, week, month or year; weekdays uses 1 for Sunday through 7 for Saturday; dayOfMonth and monthOfYear appear when a rule is pinned to a date. Every task also carries a plain-English recurrenceDescription.
Stability
formatVersion is incremented only for a breaking change. Fields may be added within a version; a reader should ignore ones it does not recognise.