Codebook Help icon Codebook Help

What is Codebook Sync?

Codebook's Sync feature allows you to make changes to your Codebook records on multiple devices and keep them all up-to-date. It's a multi-master, bi-directional sync system that runs on-demand.

You use Codebook on multiple devices and you want to have additions/changes you make on one device be reflected on all of them. Syncing is the means to do it. You need to perform a few one-time steps to setup Sync: creating a Sync Key and specifying your Sync preferences. After your preferences are set, all you need to do is start the Sync process to sync your data.

Note: The Sync feature can also be used to create a backup of your data.

Types of Syncing in Codebook:

  1. Desktop WiFi Sync

    We call the first case Desktop WiFi sync because it’s for Codebook on a mobile device (e.g. Android, iPhone) to sync with Codebook on the desktop (Mac or Windows). It’s not designed for syncing between two mobile devices or two desktops—that’s something we want to address in the future, but for now that’s how it works. You run Codebook on the desktop and it starts up a sync service when enabled, and you initiate the sync from Codebook on your mobile device.

  2. Dropbox or Google Drive Sync

    This method can be used for syncing any type of device. When syncing via a Cloud Service, your data and updates are stored in encrypted files on your cloud account. Each copy of Codebook must sync separately and to the same cloud account for all of your devices to contain all of your changes. For example, suppose you have a desktop and a mobile copy of Codebook and they are both setup to sync with the same Dropbox account. When you sync from your desktop copy, changes you have made since your last sync will be stored on your cloud account and changes from your mobile copy of Codebook that have been synced will be made on the the desktop copy. Your mobile device will need to be synced for it to contain the updates from your desktop device.

    When you sync Codebook with either Dropbox or Google Drive, Codebook creates a folder named Zetetic which contains a Shards folder. The Shards folder contains codebook-changesets-#.db files. These files are encrypted portions of your data. When you start a sync, the changes you made since your last sync are stored in a changeset. Codebook processes the changesets to determine the changes that need to be made on the device that started the sync. The "changeset" files are SQLCipher databases, you will not be able to double-click on them to open them on your desktop.

Sync Setup:

  1. Setup your Sync Key.

    You create one Sync Key which is used for all of your devices. This may have been done when you installed Codebook. You create your Sync Key on one device and then copy it to your other devices.

    For detailed instructions to on how to create a Sync Key see Setup Your Sync Key.

    For detailed instructions for adding a Sync Key to another device see Copy Sync Key.

  2. Set Sync Preferences

    On macOS

    1. Open the Codebook Preferences window. Codebook -> Preferences.
    2. Select the Sync tab on the Preferences window.
    3. Check the Enable Sync box.
    4. Select sync method: Desktop WiFi, Dropbox, Google Drive or Local Folder Sync.

      mac preferences screen

    On Windows

    1. Open the Codebook Preferences window, select the File menu -> Preferences.
    2. Select the Sync tab on the Preferences window.
    3. Select sync method: Desktop WiFi, Dropbox, Google Drive or Local Folder Sync.
    4. Click Ok

      windows preference screen

    On iOS

    1. Open the Codebook Sync screen. Tap More -> Sync.

      ios settings screen

    2. Set the Mode:

      • Tap Mode
      • Tap Desktop WiFi or Dropbox or Google Drive

        ios sync set mode screen ios sync set type screen

    3. Set Computer or Account:

      • For Desktop WiFi:

        1. Tap Computer to Browse Network.
        2. Select the network from those that are displayed. (This must match the network being used on the desktop.)

          ios sync wifi screen ios sync local network screen

      • For Dropbox or Google Drive - Tap Account to Authorize the use of your Dropbox or Google Drive Account.

        1. Tap Account to connect.
        2. Enter your cloud service account information and authorize Codebook to access your account.

          ios sync google drive screen

    On Android

    1. Open the Codebook Sync screen. Tap Home -> Sync
    2. Set the Mode:

      • Tap Mode
      • Tap Desktop WiFi or Dropbox or Google Drive

        android sync screen android sync wifi sync screen android sync selector screen

    3. Set Computer or Account:

      • For Desktop WiFi - Tap Computer to select the Network (This must match the Network being used on the desktop.)

        android sync wifi computer sync screen android sync wifi network screen

      • For Dropbox or Google Drive - Tap Account to connect your Dropbox or Google Drive Account

        android sync wifi google drive sync screen android sync cloud authorize screen

Start Sync:

Desktop WiFi

Used to Sync a mobile device with a desktop.

  1. Open Codebook and leave it running and signed in on your Mac or Windows computer
  2. Launch Codebook on your iOS or Android device, and go to the Sync view:
  3. Ensure Mode is set to WiFi, and the Computer row matches the local same local network that is being used by your desktop - Tap Start

If your desktop does not show up in the network browser, or sync is interrupted due to network problems, we’ve got some tips for troubleshooting.

Google Drive or Dropbox

On macOS

There are two ways to start the Sync process:

    1. Select the Sync Menu
    2. Click Start Sync.

  1. Click the Sync button from the Codebook toolbar.

On Windows

There are two ways to start the Sync process:

    1. Select the Sync Menu
    2. Click Sync with (cloud service).

  1. Click the Sync button from the Codebook toolbar.

On iOS

  1. Open the Codebook Sync screen. Tap More -> Sync
  2. Tap Start in the upper right hand corner

On Android

  1. Open the Codebook Sync screen. Tap Home -> Sync
  2. Tap the Sync symbol in the upper right hand corner.

You may be prompted to sign in to your Dropbox or Google Drive account if you have not already done so from within Codebook.

Updates you have made on this device will be stored in the cloud service and Codebook changes made on another device that have already been synced with this service will be reflected on this device.

Replication Conflicts:

The Codebook sync process attempts to merge all changes from every device syncing, but there are certain cases where multiple devices have changed the same piece of data. For example, changing the same Password on two different devices. In this scenario, Codebook chooses the most recent change to persist.