DunneNote
DunneNote is commercial software. The notebooks it writes are not locked to it: each one is a plain folder in an open format, and the tools to read it are MIT-licensed.
A notebook called Research is a folder called Research.dunnenote. Everything in it can be read with ordinary tools such as sqlite3 and sha256sum.
The current version is DunneNote Format 0.18, a draft. It will be frozen as 1.0 when DunneNote reaches 1.0. Until then, every change carries a new version number and a changelog entry.
Tools follow the same rules the app does. Content a tool does not recognise is kept, never deleted. A notebook one version newer than a tool knows opens read-only, and anything newer is refused rather than risked.
The reader is tested against notebooks written by DunneNote itself, built through the same code the app uses, and must read each one exactly as the app does. Those test notebooks are MIT-licensed too.
The writer is tested the other way round: DunneNote's own code opens notebooks the library wrote, checks them with its full health check, and must read back exactly what was written.
The specification, the schema, the test notebooks, the library and dnfmt are all in one public repository, under the MIT licence. Version 0.1.1 reads and writes DunneNote Format 0.18. DunneNote and DunneCorp are trademarks of Dunne, Corp.; the MIT licence doesn't grant use of those names, except to say truthfully that software reads or writes DunneNote notebooks or follows this specification.
To report a security problem in the format or the library, use GitHub's private vulnerability reporting on the repository (Security tab, then Report a vulnerability), not a public issue.
Every table, index and trigger at the current version, generated from DunneNote itself so it cannot drift from what the app writes.
schema/v18.sql, generated by DunneNote
The dunnenote-format library and dnfmt tool open a notebook, read every canvas kind, check it for damage, and export it to Markdown, CSV or JSON.
dunnenote-format 0.1.0
DunneNote Format 0.18, a draft written from the app's code, with a checklist of every rule a tool that writes notebooks must follow.
Complete: DunneNote Format 0.18, draft
Create notebooks from your own scripts: sections, pages, text, sketches, pictures, tables, calendars and forms, plus captions, templates, tags and archiving. DunneNote opens the result as if it had made it.
dunnenote-format 0.1.0, every canvas kind