Project Syncing
You can use sync services, such as Dropbox and iCloud, to sync your Curio project files between your machines. However, you should follow some guidelines to minimize the chance of conflicts or partial syncs.
Backgrounder
First some definitions to provide more details on how syncing works.
Sync Services
By far the most popular sync services used by Curio customers are iCloud and Dropbox. However, there many other popular options such as Google Drive, Microsoft OneDrive, and Box Sync, which customers may use to sync their files between machines.
These services work by watching for local file changes and then silently uploading those changes to their cloud servers. They will also receive notifications from the cloud when file changes are detected there, perhaps from one of your other machines, so the files can be downloaded to your local machine.
If a problem occurs during this process or if changes are made on multiple computers between syncs then the result is a conflict, where the service can’t determine how the file should be reconstructed locally.
Curio Package Files
A Curio project file is technically a macOS package file. It may look like normal file, however it’s a actually a special kind of folder containing dozens, hundreds, or even thousands of files and subfolders. Everything contained in your project is organized neatly within this hidden file hierarchy.
You can carefully explore within a Curio project package by right-clicking on a Curio project file in the Finder and choosing Show Package Contents to see what’s inside. Just be sure not to change any files you find within.
When considering syncing, this means that all of these files in your project package need to be completely synced when changes are made. Most operations, such as editing a text figure, or deleting an idea space, might only impact a couple of files within the project package hierarchy.
Important
If the entire sync doesn’t complete then you could end up with a mix of old and new internal project files. This can lead to problems when you then try to download those changes on a different machine. In a worse case scenario Curio could be unable to open the corrupted project.
Project Password?
If Curio is unable to open a project it assumes the project is encrypted so asks for a project password to decrypt it. However, this password dialog may also appear for non-encrypted projects if they have been corrupted due to partial sync!
If this happens, force a download and then open the project.
Avoiding Sync Issues
Fortunately there are some steps you can follow to minimize the chance of lost content due to incomplete syncs.
Warning
The key is to make sure everything completely uploads and downloads with the syncing service before disconnecting from the internet or opening the project. You do not want a partial upload or download sync or corruption can occur.
On Machine #1
- Make sure to quit Curio so all changes are saved and committed to disk.
- Allow your sync service time to synchronize changes to the cloud before disconnecting from the Internet. For Dropbox, simply wait for its icon in the menu bar to stop animating. For iCloud, you can open a Finder window and see if the iCloud Drive sidebar item has an animating sync icon or if the status text indicates that changes are uploading. Essentially don’t immediately disconnect from the Internet, give your Mac a few moments to finish the sync.
Note that if you have a large number of changes or added large assets to your project then it may take a few seconds for those changes to sync up the cloud.
On Machine #2
- Login and connect to the Internet.
- Allow your sync service time to synchronize changes from the cloud before launching Curio. This means waiting for that animating icon to finish. It is very important to wait for all changes to sync down before opening your project.
- Launch Curio and open your project.
Sync Indicators
Most cloud services have handy indicators which can let you know when it’s syncing files between your local drive and the cloud, so you can wait until the sync is completely finished before disconnecting from the network or launching Curio.
iCloud Sync Indicators
Learn more about iCloud syncing and their icons.
When a file is only in the cloud and not on your local hard disk…
The icon next to the file looks like this:
When iCloud is syncing…
This icon will appear next to a file that is waiting to be synced to the iCloud for the first time:
The iCloud Drive item in the Finder sidebar will show an animating icon:
And the icon next to the file being synced looks like this:
And the Finder status bar (View > Show Status Bar) will show you additional details:
When iCloud has finished syncing…
The icon next to the file that has finished syncing looks like this:
If a file could not be synced the file icon will look like this:
If you’ve run out of storage space on your iCloud the file icon will look like this:
Important
Once you open the synced file or folder its sync icon is removed and it will look like a normal file with no sync icon next to it.
Dropbox Sync Indicators
Learn more about Dropbox syncing and their icons.
When a file is only in the cloud and not on your local hard disk…
The icon next to the file looks like this:
When Dropbox is syncing…
The Dropbox menu bar icon will show an animating icon:
And the icon next to the file being synced looks like this:
When Dropbox has finished syncing…
The Dropbox menu bar icon looks like this:
And the icon next to the file that has finished syncing looks like this:
If there was an error syncing the file icon will look like this:
Important
Once you open the synced file or folder its sync icon is removed and it will look like a normal file with no sync icon next to it.
OneDrive Sync Indicators
More information about OneDrive syncing can be found here with details on indicators and optional Finder integration that you can enable.
News about an important update to OneDrive for macOS Monterey can be found here.
Google Drive Sync Indicators
More information about Google Drive syncing can be found here with details on where they show sync status information.
Offloaded Files
Many sync services support offloaded files where the file or folder existing primarily in the cloud and is only downloaded to your local computer when you try to access it.
Examples include:
- Dropbox Smart Sync
- iCloud Optimized Mac Storage
- OneDrive Files On-Demand (more details).
- Google Drive File Stream
These sync services will usually indicate this offloaded status with a little cloud icon next to the file name in the Finder, like Dropbox’s icon and iCloud’s icon.
Problems with Offloaded Files
Generally this is considered a space-saving feature so that older content is automatically removed if you haven’t needed it in a while. However, it can cause problems if you go to access that data and either don’t have access to the internet at the moment, or the content requires a long time to download.
Since Curio’s project package files are technically directory hierarchies, if a sync service decided to offload items within the hierarchy then that could cause corruption problems.
Force Download
Important
We strongly encourage you to make sure an entire project is downloaded locally before attempting to open it!
To force the service to download a Curio project file you can follow these steps:
- On Dropbox, right-click on the project file and choose Smart Sync > Local.
- On iCloud, right-click on the project file and choose Download Now.
- On OneDrive, right-click on the project file and choose Always Keep on This Device.
- On Google Drive, right-click on the project file and choose Drive File Stream > Available Offline.
The cloud service will download the project file and then you can double-click to open it in Curio.
Alternatively you can simply drag-and-drop the Curio project file to a folder which is not synced such as your Downloads folder.
No Sync
You can actually direct both Dropbox and iCloud to not sync a specific folder, even if located in normally synced folder hierarchy, like Dropbox’s ~/Dropbox
folder, or iCloud’s ~/Documents
folder.
Perhaps you want to make this change temporarily, because you’re going on a trip, or you wish to turn it off permanently.
- For Dropbox, go into its Settings > Selective Sync and uncheck the folder.
- For iCloud, you can rename the folder so it has a
.nosync
extension such as~/Documents/Curio.nosync
and iCloud will no longer sync its contents. You can even use this trick to avoid syncing a specific file such asVacation.curio
toVacation.nosync.curio
.
Of course, if you really wish to make this a permanent change then simply drag your Curio
project documents folder elsewhere, such as right off the home folder: ~/Curio
.
Sync Service Limitations
Some cloud services have limitations which may cause issues.
iCloud Drive Limitations
If you use iCloud Drive to share macOS folders or files with other colleagues then if those other users delete a file or folder, they are instantly removed without going into the Trash or iCloud Drive’s Recently Deleted folder. There is no way to bring them back.
This means if a friend inadvertantly deletes one of your shared Curio projects then it cannot be recovered so it is imperative that you keep separate backups just in case.
OneDrive Limitations
At the time of this writing, OneDrive has some limitations that could impact Curio projects:
- OneDrive paths can’t have the vertical bar character (“|”). This could cause a problem if you have, for instance, an idea space title with a vertical bar in it, thus the underlying asset file would have the same character, and OneDrive will balk at it. Curio filters out many “bad” characters from file names ( / \ ? % * : ” < > ), but that character’s unfortunately not one of them (we’re a bit nervous to add it now as it could break some existing linkages).
- OneDrive has a max path length of 400 characters. That sounds like a lot but if you put a Curio project in a deeply nested subfolder with lots of long folder names, and Curio itself creates files with long 36-character unique ID’s then you could sneak up on it.
In short, be very careful if using OneDrive.
Box Drive Limitations
While older versions of Box Drive did not support Mac package files, the latest Box Drive now supports Mac package files on macOS Big Sur and beyond, thus should now support Curio’s project file format. Make sure you’re on the latest version of Box Drive to ensure maximum compatibility.
Synology Cloud Station Limitations
Synology Cloud Stations do not support macOS aliases so if you create an alias to a file within your idea space, the alias will be broken when Synology syncs the file.