This script allows Standard Notes users to export their notes in markdown format.
I personally used it to make them compatible with Obsidian.
Features
- Export notes to markdown with YAML front matter metadata
- Keep tags
- Handle file last modified time
- Remove trashed, archived and duplicated notes
Before you begin, ensure you have met the following requirements:
- You have Python 3 installed on your system
- You have downloaded and unzipped the decrypted backup zip file from Standard Notes (please visit the official Standard Notes website if you don't know how to do so)
When you unzip the backup file, you'll find may files, but we are only interested in the first one, i.e. Standard Notes Backup and Import File.txt.
From the command line, you can run:
$ python3 convert.py <path-to-std-notes-file> <path-to-exported-dir>
where <path-to-std-notes-file> is the path to the file mentioned above, and <path-to-exported-dir> is the path into which the notes are exported (if the argument is not passed, it defaults to ./Notes). Make sure the directory does not exist.
Example:
$ python3 convert.py Standard\ Notes\ Backup\ and\ Import\ File.txt ~/Exported_Standard_Notes
- The Standard Notes Backup and Import File.txt file includes a version key. At the time of this writing, it is set to version 4. The script may work for earlier or future versions.
- I used Python 3.10 to write the script.
- I used no external libraries, so the front matter YAML formatting is done manually.
- I used the free version of Standard Notes, so the script may not run as you expect with some installed plugins.
Feel free to fork the project to adapt it to your use case.
This script is inspired by this project written in PHP.