Skip to main content

CLI tool to backup Supernote note files

Project description

Simple utility to backup notes from a Supernote device over WiFi

I created this cli tool to backup notes from my Supernote Nomad (A6 X2) over WiFi. No accounts or third party cloud service providers are necessary. It will probably work on any of the Supernote devices running the most up-to-date software.

Github repo for snbackup

The purpose is to download notes from a Supernote device and save them locally for backup and safe keeping. This is different than exporting notes as it does not attempt to convert notes to a different format. It's only meant to download the note files (with a .note extension) exactly as they are found on the device. If you are interested in converting your notes to PDF or PNG after downloading, see another project called supernote-tool.

It works by using the builtin Browse & Access feature available on the Supernote device. This feature creates a small web server directly on the device and makes it possible to browse its files through a web browser. The Supernote device and your computer must be on the same local network.

Steps:

  1. Install Python 3.10 or newer along with pip

  2. Setup your Python virtual environment and install with pip install snbackup

  3. Create a folder on your computer to store your Supernote note backups

  4. IMPORTANT: Create a file called config.json or edit the one provided with this project. This file is required to determine where to save your backups and where to access the device on the network. For example I place my config file in the same directory as my backups.

Example:

{
    "save_dir": "/Users/devin/Documents/Supernote",
    "device_url": "http://192.168.1.105:8089/"
}

All note backups, metadata files, and logs for snbackup are located under the save_dir location.

Should work the same for Mac or PC. Use the forward slashes just like in the example above even on Windows.

The device_url needed will be displayed on the Supernote when Browse & Access is enabled. Use that URL from your device here.

  1. Make sure the Supernote device is connected to WiFi with the Browse & Access feature turned on

  2. There are two ways to run the command from your terminal or command line:

    • snbackup

      This will look for config.json in your current working directory

    • snbackup -c /the/path/to/config.json

      This optionally specifies the location of the config.json file

The first run may take a few minutes depending on how big your notes are and how many you have on the device. The first backup is a full backup, but subsequent runs only backup the notes that have been modified since the last backup; this greatly speeds up future backups.

You can also force a full backup of all notes by running snbackup -f or snbackup --full

The notes are stored as is under your local save directory setup in the config.json file. If a note called Ideas lives inside a folder called Stuff on your Supernote device, it will be stored locally as /Users/devin/Documents/Supernote/<YYYY-MM-DD>/Note/Stuff/Ideas.note or translated to C:\Users\devin\Documents\Supernote\<YYYY-MM-DD>\Note\Stuff\Ideas.note on Windows.

Future plans:

  • Add a proper first time setup option
  • Add archive or cleanup feature to remove old backups
  • Persist note metadata in sqlite instead of json file
  • Add note validation option to ensure local and remote notes are identical
  • A restore device feature to bulk move local backups back to device

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

snbackup-1.2.1.tar.gz (13.8 kB view details)

Uploaded Source

Built Distribution

snbackup-1.2.1-py3-none-any.whl (12.2 kB view details)

Uploaded Python 3

File details

Details for the file snbackup-1.2.1.tar.gz.

File metadata

  • Download URL: snbackup-1.2.1.tar.gz
  • Upload date:
  • Size: 13.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for snbackup-1.2.1.tar.gz
Algorithm Hash digest
SHA256 4a39e2b54e833171989a5534269400183da243b4826b18be541df66e33c8095e
MD5 9f934daa3db2f268210b7dc1b0387afb
BLAKE2b-256 05e0742c5871c616b27535713ac0a4670112d414b5ffcb2623bda7dae64f550b

See more details on using hashes here.

File details

Details for the file snbackup-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: snbackup-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for snbackup-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f9ab7a37b0eed3d4ada58c3621aeac65fcb4be7c700a8fb5b70579191d12c3f8
MD5 2153e3f03651e62052dd7247bd310b03
BLAKE2b-256 e0ef7debb6759e44c8968ec6573bdfa8e28961b528942c51142e89f15eaed152

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page